北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 5798|回复: 6

请教一下mush中string.find使用的问题

[复制链接]
发表于 2014-11-9 16:38:47 | 显示全部楼层 |阅读模式
触发器语句为^这是一本(.*)的.*$如果我在发送栏中写
x="%1"
print(string.find(x,"经"))
发送到脚本解析器
触发后可得正确数字

但如果发送栏中写
x("%1")
发送到脚本解析器
脚本为
function x(s)
local i,j=string.find(s,'经')
print(s,i,j)
end

i,j均为空,不能得到正确数字

如果我发送栏留空
在右下脚本中填
x
脚本为
function x(a,b,c,d)
local i,j=string.find(c[1],"经")
print(i,j)
end
i,j均为空,不能得到正确数字

我用GetTriggerWildcard来抓也试过,只要是写进脚本,就不能匹配


不知道有没有那位好心大大给解解惑,看看是那里出错了

北大侠客行MUD,中国最好的MUD
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2014-11-9 20:31:01 | 显示全部楼层
触发器语句为^这是一本(.*)的.*$如果我在发送栏中写
x="%1"
print(string.find(x,"经"))
发送到脚本解 ...
pkujackhu 发表于 2014-11-9 04:38 PM

以上三种形式均测试通过。
第一种,无需解释。
第二种:函数定义要在x("%1")之前。


第三种:测试通过。没发现错误。


正则表达要选上。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2014-11-9 21:59:26 | 显示全部楼层
本帖最后由 pkujackhu 于 2014-11-9 02:18 PM 编辑

谢谢大大的解释,我用你的方法试了第三种还是不行,我上图一下,麻烦大大再帮我看看,我那里错了?                         
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2014-11-10 07:10:42 | 显示全部楼层
你的图片来自于qq空间,无法显示。

这个问题其核心还是对变量的理解。至于变量,MUSH里有两种:一个是MUSH自带变量,用SetVariable存储,GetVariable获取。还有就是lua变量,属于编程语言内容。

如果楼主希望像zmud一样,就是一个载入文件解决所有设置(包含机器触发),其核心思想就是怎么弄到一个脚本文件里用脚本引用的方式完成这些。所以,楼主可以考虑参考下《底层框架》通过文件引用模式达到目的。故此,这种一个脚本的方式,变量的使用建议还是用第三种脚本直接传递(MUSH右下角脚本)模式来实现。
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2014-11-10 08:51:04 | 显示全部楼层
恩,谢谢,这个问题解决了,你说的《底层框架》我有看过,但很多都看不懂,我没学过编程,都是自己在网上找资料看,很多地方都是一知半解的
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2014-11-10 13:02:55 | 显示全部楼层
本帖最后由 pkujackhu 于 2014-11-10 05:06 AM 编辑

晕,原来是小刀前辈,久仰大名了
前辈,我用了你的城际互联,为什么从武当出来的时候总是出错,我用fullpath看了一下,是没有n;ask song about 下山;这部份,我看路线库里是有的,但应用的时候就没有了,而且我用你的那个.xls的路线库维护工具总是出错,不知道是不是我使用方法不对,好像现在使用方法的文章更新了,维护工具还没有
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2015-1-29 19:35:35 | 显示全部楼层
解决了一个大问题!!!
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-11-1 01:32 PM , Processed in 0.010253 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表