Php 如何检查字符串是否包含QWERY/1234以外的内容

Php 如何检查字符串是否包含QWERY/1234以外的内容,php,Php,我试图确保我发布的字符串只有字母和数字字母/数字+,。;等等。然而,我似乎做的所有检查仍然使èò返回为有效 有人知道这个问题的解决方案吗 谢谢如果您确切知道要允许哪些字符,a应该适合您的需要: //与您要求的字符完全匹配,不再匹配 预匹配(/[a-zA-Z0-9,\.;]*/,$您的字符串); 请务必转义,因为例如,一个未转义的点(.)将匹配每个字符。您能提供一个当前检查不起作用的示例吗?我一直在检查UTF8,但我意识到这些字符通常是UTF8。我已将其更新为“^/[a-zA-Z0-9\',\.

我试图确保我发布的字符串只有字母和数字字母/数字+,。;等等。然而,我似乎做的所有检查仍然使èò返回为有效

有人知道这个问题的解决方案吗

谢谢

如果您确切知道要允许哪些字符,a应该适合您的需要:

//与您要求的字符完全匹配,不再匹配
预匹配(/[a-zA-Z0-9,\.;]*/,$您的字符串);

请务必转义,因为例如,一个未转义的点(.)将匹配每个字符。

您能提供一个当前检查不起作用的示例吗?我一直在检查UTF8,但我意识到这些字符通常是UTF8。我已将其更新为“^/[a-zA-Z0-9\',\.\.\]*/”但当我尝试字符串asdgfgsasdf.,;”;ir返回false,知道我做错了什么吗?尝试添加
$
锚定:
“/^[a-zA-Z0-9,\;”]+$/“
在我看来,你不必转义”;“,”和“,”,因为它们没有元字符的含义。并且必须以相同的字符(“/”开始和结束,通常,“^”必须在“/”内(请参见cOle2的正则表达式)。cOle2尝试了您的一个,但仍然返回false:/Dominik我对正则表达式不太熟悉,因此排除模式定界符
/
,这很难实现,您不需要对大括号中的任何字符进行转义(如果它位于字符列表的末尾,也不需要转义
-
),因此
“/^[a-zA-Z0-9;;:.:.-]*$/”将起作用。