我正在寻找一种在字符串中搜索一组非常具体的字符的方法:"(),:;<>@[\]
specialChar = str:find("[\"][%(][%)][,][:][;][<][>][@][%[][%]][\\]")
我在想,由于 Limitations of Lua patterns 的缘故,不会有任何模式可以满足我的需要。 .
我已阅读 Lua Manual模式匹配部分非常彻底,但似乎仍然无法弄清楚。
有谁知道我可以识别给定字符串是否包含这些字符中的任何一个的方法?
请注意,如果有帮助,我不需要知道它是哪个字符或它在字符串中的位置。
最佳答案
检查字符串是否包含"
, (
, )
, ,
, :
, ;
, <
, >
, @
, [
, \
或 ]
你可以使用
function ContainsSpecialChar(input)
return string.find(input, "[\"(),:;<>@[\\%]]")
end
参见 Lua demo
关于lua - 如何创建仅匹配特定字符集的模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60076482/