2012-07-31 31 views
0

我有一个函数用于替换一些带有几个字符或数字的单词。我使用这种方式string.gsub()功能:如何使用string.gsub替换Lua中的括号?

string.gsub(line, "[0-9%a%s/,-]+", "\t") 

这工作挺好用数字,字母,空格,,/字符串。我也想替换括号,如()。但只是插入()我的模式不起作用。我也尝试过%(%),但没有成功。如何在string.gsub()方法中使用模式替换Lua中的括号?

回答

2

[]里面唯一需要转义的字符是[]%-,所有这些字符都是用%转义的。因此,逃逸-如下工作:

string.gsub(line, "[0-9%a%s/,%-()]+", "\t") 

这可能也是值得一提的是,[0-9%a]相当于[%d%a],这相当于%w