ltblue 发表于 2015-4-7 07:52:15

关于lua里抓正则的问题

在lua里,有这样一个触发

你拿出五两白银(Silver)给店小二。

我想用wait.regexp来抓,本来我是抓
wait.regexp(“你拿出五两白银(Silver)给店小二。”)
但结果明显不行
我就考虑到是括号的问题,于是用了转义,改成
你拿出五两白银%(Silver%)给店小二。
继续不行
反正各种改吧,能想到的都试了,都不行
甚至我都改成了
你拿出五两白银.*给店小二。
还是不行

目前没办法,逼得我改成了
你拿出五两白银.*
这样倒是可以了,但.*之后加什么都不行
请问这样应该怎么改?

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

maliyu 发表于 2015-4-7 11:54:54

改成
wait.regexp(“^.*你拿出五两白银\\(Silver\\)给店小二。$”)

ltblue 发表于 2015-4-7 14:48:11

回复 2# maliyu


    晚上回去试试,多谢
    什么原理呢?我看的,lua里的转义应该是%,为什么改成两个斜线?

jarlyyn 发表于 2015-4-7 14:54:46

1.这里该用什么转意符和正则解释器的语法有关,和lua无挂。
2.lua的转意也是\
页: [1]
查看完整版本: 关于lua里抓正则的问题