匹配 IRC 昵称的正则表达式

2024-01-09

如何使用正则表达式来匹配 IRC 昵称?如果这会产生影响的话,这是在 Ruby 中完成的(可能会,使用正则表达式的语法,但谁知道呢。)

编辑:IRC 昵称可以包含任何字母、数字或以下任何字符:< - [ ] \ ^ { }


# If you are testing a single string
irc_nick_re = /\A[a-z_\-\[\]\\^{}|`][a-z0-9_\-\[\]\\^{}|`]*\z/i 

# If you are scanning them out of a larger string
irc_nick_re = /(?<=[^a-z_\-\[\]\\^{}|`])[a-z_\-\[\]\\^{}|`][a-z0-9_\-\[\]\\^{}|`]*/i 

上面允许使用单字符名称。如果需要两个字符,请更改* to +。如果需要三个字符(或更多),请将其更改为{2,},其中“2”是最小字符数减 1。

如果存在最大字符数(例如,EFNet 只允许昵称最多 9 个字符,而 Freenode 允许昵称最多 16 个字符),那么您可以在逗号后面包含该数字(负 1)。例如:

# Validate nicknames that are between 3 and 16 characters long (inclusive)
irc_nick_re = /\A[a-z_\-\[\]\\^{}|`][a-z0-9_\-\[\]\\^{}|`]{2,15}\z/i 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

匹配 IRC 昵称的正则表达式 的相关文章

随机推荐