windyhawk 发表于 2015-1-16 12:52:53

mushclient一个很简单的问题

请教一个mushclient的问题,我触发抓不下来变量。触发没有问题,但是当我用%1 %2来抓变量通配符时,变量都是空的,请问这是为啥?用%0 就没有问题,可以把整句话都赋予给变量。比如下面的例子:

触发:
^【 精神 】\s+\d+\s+/\s+\d+\s+\[\d+%\]\s+.*$

触发后的命令:send to world
say %1 %2 %3

但是触发了以后, mush只发出命令“say”, 后面什么都没有。我也尝试发送给一个变量,触发以后变量名倒是立马就出现了,可是变量内容为空。。。。

这是怎么回事?

北大侠客行MUD,中国最好的MUD

xxxcc 发表于 2015-1-16 14:04:32

0是整个匹配的语句,1是第一个括号,2是第二个,你这个正则表达式一个括号都没有,当然没有1,2之类的了。
建议使用命名的方法,不要用%1 %2
^【 精神 】\s+(?P<sp>\d+)\s+/\s+\d+\s+\[\d+%\]\s+.*$
sp = %<sp>

windyhawk 发表于 2015-1-17 00:04:44

多谢楼上详解。我开始也是觉得应该有个类似zmud里抓变量的方法,但是看了好几个教程,都没有写
页: [1]
查看完整版本: mushclient一个很简单的问题