littleknife 发表于 2010-11-9 09:10:56

原帖由 cying 于 2010-11-9 07:59 AM 发表 http://pkuxkx.com/forum/images/common/back.gif
谢谢大家的支持和帮助
我第一个疑问其实是为了弄明白变量赋值的问题,通过前辈的解释我的理解为这个变量t只是一个临时的变量,和变量表中的变量不同,如果要存入变量表中还需要赋值(把%1发送给变量t),这样如果一个 ...


你的理解有误:t并不是临时变量,而是触发器中参数的自定义名称。
首先,在触发器里定义(?P<t>/d+) 其意义是给括号内的触发一个人为的参数命名,而%1,%2这样的参数名是1和2,是系统默认的。你的触发里为自定义参数名称。要想使用触发器里的参数,可以采用以下几种方式:
1、用自定义参数传递变量。在发送框内容里输入,诸如abc="%1"的方式,选脚本解析器传递变量。
2、用下方脚本函数的方式传递变量。但此函数必须采用特殊格式,xxx=function(name,line,wildcards)。在最下方的脚本函数中引用。只需写上函数名称即可。
(1)其中,参数%1就是wildcards],默认表示触发中的%1,依此类推。
在脚本函数的使用方式如下:
xxx=function(name,line,wildcards)
abc=wildcards
end
这与在发送框内输入abc="%1"完全一致。
(2)若有自定义名称的参数,比如楼主的(?P<t>/d+),首先就需要给触发一个名字,如ttt。在这个名为ttt的触发里参数t的传递如下:
xxx=function(name,line,wildcards)
abc=GetTriggerWildcard ("ttt", "t")
end

[ 本帖最后由 littleknife 于 2010-11-9 09:25 AM 编辑 ]

cying 发表于 2010-11-9 14:23:25

oh
了解了,谢谢

ddid 发表于 2010-11-9 15:09:44

原帖由 littleknife 于 2010-11-9 09:10 发表 http://pkuxkx.com/forum/images/common/back.gif



你的理解有误:t并不是临时变量,而是触发器中参数的自定义名称。
首先,在触发器里定义(?P/d+) 其意义是给括号内的触发一个人为的参数命名,而%1,%2这样的参数名是1和2,是系统默认的。你的触发里为自定义 ...

yct23

ddid 发表于 2010-11-9 15:36:25

关于简单信息在 mini window 中输出,可以看我刚发的新贴:
http://pkuxkx.com/forum/thread-17090-1-1.html

cying 发表于 2010-11-10 17:26:00

已经看到了,赶快学习一下,可惜我玩的不是北侠,要不然应该接受的快一点
也有好处 所有的东西都要自己弄,理解的更透彻

coflute 发表于 2010-11-11 11:09:02

受教了~我也是从zmud转型到mush的,开始学的时候也很有一种无所适从的感觉,很喜欢这种文章
页: 1 [2]
查看完整版本: 一个由zmud转入mush的初学者的小体会