lua - 如何创建仅匹配特定字符集的模式?

标签 lua pattern-matching special-characters

我正在寻找一种在字符串中搜索一组非常具体的字符的方法:"(),:;<>@[\]

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/

相关文章:

nginx - 在 Nginx 上使用 Lua 重定向到相同的 URL(openresty 设置)

lua - lua_rotate 是做什么的?

lua - 如何使用Lua获取Neovim当前工作目录下的所有文件和目录?

可选第一个特殊字符的正则表达式

php - 我需要一个与表字段中的任何值匹配的字符或字符串

html - "&#9;"和 nbsp 之间的区别;或 "&#32;"

r - 如何在R中选择带有星号的变量

c++ - Visual Studio 2013 错误 LNK2019

ruby - 查找字符串中的常见模式并根据模式对它们进行分组

PowerShell Invoke-Expression 命令参数包含逗号