问题描述
|
因此,我试图在字符串中查找方括号:
s = \"testing [something] something else\"
x,y = string.find(s,\"[\")
这给我一个错误:格式错误(缺少\'] \')。
我也尝试过:
x,\"\\[\")
给我同样的错误。
还有这个:
x,\"\\\\[\")
在这种情况下,x和y为零。
有关如何正确执行此操作的任何想法?提前致谢。
解决方法
约翰的答案将起作用-关闭模式匹配。
您要尝试做的-逃离
[
-是通过Lua中的%
字符完成的:
x,y = string.find(s,\'%[\')
而且Lua中的字符串都具有string模块作为其元表,因此您可以这样说:
x,y = s:find(\'%[\')
甚至:
x,y = s:find\'%[\'
,使用string.find
的第四个参数可以关闭模式匹配。
x,\"[\",nil,true)