为什么下面的php regexp不接受';及&;?
为什么下面的正则表达式不接受为什么下面的php regexp不接受';及&;?,php,regex,Php,Regex,为什么下面的正则表达式不接受”和& 我只想接受'和@和&和目前,它只接受@和 if(!preg_match("/^[a-zA-Z0-9.'@& ]+$/", $source) == 1) $err[] = "Wrong value for source field"; 接受指定字符的正则表达式是否正确 更新: $source = $_POST['source']; if(!empty($source)){ if(preg_match("/^[a-zA-Z0
”
和&
我只想接受'
和@
和&
和
目前,它只接受@
和
if(!preg_match("/^[a-zA-Z0-9.'@& ]+$/", $source) == 1)
$err[] = "Wrong value for source field";
接受指定字符的正则表达式是否正确
更新:
$source = $_POST['source'];
if(!empty($source)){
if(preg_match("/^[a-zA-Z0-9.'@& ]+$/", $source) !== 1)
$err[] = "Wrong value for source field";
elseif(strlen($source) > 50)
$err[] = "Max length exceed for source field";
}
它应该接受所有这4个字符。检查你的$源代码,请包括一个失败的测试用例。@Chris:没有必要。它是好的正则表达式@nhahtdh$source value是=
我是一名开发人员&@。
顺便说一句,你不需要==1
只要使用:如果(!preg_match(“/^[a-zA-Z0-9.@&]+$/”,$source))