我试图在mirc usingn regex上只捕获用户名的昵称,但我无法捕获这是我想要使用用户名的数据
并包含此正则表达式代码:
/^x3a(:?([w+])?([sw+s]?))s?(w+)/i
以下是regexer:Regxer
我想在第1组中获得用户名。
那么有人有办法抓住这种情况吗?
if ($regex(info,$1-,/^x3a(?::?(?:[w+])?(?:[sw+s]?)?)?s?(w+) (CHAT) (#S+) x3a([x21])(hi|test)( |$)/i)) {
echo * NickName: $regml(info,1)
echo * Method: $regml(info,2)
echo * Channel: $regml(info,3)
echo * Symbol: $regml(info,4)
echo * Trigger: $regml(info,5) }
:[Tag]Xs_user CHAT#test_channel:!你好<-不行
:madhu CHAT#test_channel:!你好<-这适用于
所以如果尼克是频道运营商,只需要拿用户名就可以比较了。
再添加两个?
,使(:?([w+])?([sw+s]))
和([w+])?([sw+s]?)
组可选:
^x3a(:?([w+])?([sw+s]?)?)?s?(w+)
^ ^
请参阅regex演示。如果您使用此正则表达式,则用户名将在第4组中。
要将用户名放入组1,请在打开(
:后添加?:
,对所有不感兴趣的组使用非捕获组
^x3a(?::?(?:[w+])?(?:[sw+s]?)?)?s?(w+)
^^ ^^ ^^
查看此regex演示