php regex帮助,用于限制允许的字符

问题描述

| 我正在PHP中工作,想为提交的文本字段设置一些规则。我要允许字母,数字,空格和符号“ 0” 这就是我所拥有的:
/^(a-z,0-9+# )+$/i
这似乎可行,但是当我添加
\'
-
符号时会出现错误。     

解决方法

        差不多好了。您正在寻找的被称为字符类。这些通过使用方括号表示。例如
/^[-a-z0-9+#,\' ]+$/i
要包括连字符,它必须是类中的第一个或最后一个字符。 编辑 当您想包含单引号并且您正在使用PHP(其中正则表达式必须以字符串表示)时,请谨慎使用模式。在这种情况下,您可以使用
$pattern = \"/^[-a-z0-9+#,\' ]+\\$/i\"; // or
$pattern = \'/^[-a-z0-9+#,\\\' ]+$/i\';
    ,        您应该使用字符类-
[a-zA-Z0-9 #\',-]
请注意,应先使用“ 3”或“ 3”,否则应将其转义,否则它将被视为表示范围,并且会出现错误     ,           我要允许使用字母,数字,空格和符号
#
\'
,
-
。 使用此正则表达式...
/^[-a-zA-Z\\d \',#]+\\z/
注意the13。如果使用
$
,则允许尾随
\\n
。键盘。 如果您使用
\'
作为字符串定界符,请确保转义
\'
。     ,        请用
/^[a-z,0-9+\\#\\-,\\s]+$/i
    ,        使用此正则表达式:
/^[-a-z0-9,# \']+$/i