我有一个函数用于替换一些带有几个字符或数字的单词。我以这种方式使用string.gsub()
函数:
string.gsub(line, "[0-9%a%s/,-]+", "\t")
对于包含数字,字母,空格,,
和/
的字符串,这非常有效。我还想替换(
和)
等括号。但只是将()
插入我的模式不起作用。我也试过%(
和%)
,但没有成功。如何使用string.gsub()
方法中的模式替换Lua中的括号?
答案 0 :(得分:2)
需要在[]
内转义的唯一字符是[]%-
,所有这些字符都使用%
进行转义。因此,如下所示转义-
:
string.gsub(line, "[0-9%a%s/,%-()]+", "\t")
值得一提的是,[0-9%a]
相当于[%d%a]
,相当于%w
。