if(!eregi("^([0-9a-z_\[\]\*\- ])+$", $subuser))
$form->setError($field, "* Username not alphanumeric");
Run Code Online (Sandbox Code Playgroud)
任何人都可以告诉我为什么不允许这样的字符-和*?
if(!eregi("^([0-9a-z])+$", $subuser))
$form->setError($field, "* Username not alphanumeric");
Run Code Online (Sandbox Code Playgroud)
这是原始代码.一位朋友将其更改为顶部,它将允许az和0-9,但它不允许我需要的其他字符.谁能帮我?
提前致谢.
你的正则表达式使用PCRE语法,所以你必须使用preg_match()而不是eregi().
请尝试使用此代码:
else if (!preg_match("/^([0-9a-z_\[\]* -])+$/i", $subuser)) {
$form->setError($field, "* Username not alphanumeric");
}
Run Code Online (Sandbox Code Playgroud)