查找字符串中的任何特殊字符

问题描述:

我仍然在为包含特殊字符(标点符号,下划线等)的match a string奋斗。我如何使它与模式一起工作?查找字符串中的任何特殊字符

if string.match(mystr, '???') ~= nil then 
    print('Invalid characters.') 
end 
+1

抬起头,Lua中没有一个标准的正则表达式引擎 - 它有一些所谓的[模式](http://www.lua.org/manual/5.2/manual.html#6.4.1)。 – Oka

+1

'if string.find(mystr,'%p')then' –

字符集[...]是你的朋友在这里。

.*[@!#$%^&*()?<>].* 
+0

在这种情况下,取消任何不是alpha或数字**的东西不是更好的选择吗? (空格字符也必须避免)。 –

+0

@AlexandreSeverino在这种情况下,否定字符集可能是最好的。 '[^您允许的任何字符]' –

+1

@AlexandreSeverino尝试'[^ a-zA-Z0-9]' –