php中的正则表达式,只允许使用字符

时间:2013-11-21 18:49:02

标签: php regex

我的常规expresion.i想要设置允许的字符只有a-zA-Z和 - 它的工作,但有一个错误。如果我插入这样的字符串 - “4567”它返回false 但如果我插入这样的字符串 - “4567PA”它返回true。

   if(!preg_match("/^[a-z-]+$/i", $string)) return false;
   else return true;

1 个答案:

答案 0 :(得分:1)

如果没有任何匹配,你将返回false - !preg_match(...) - 这不是你想要的(我猜)。另外,if / else不是必需的,因为你返回true / false,这是preg_match返回的内容。

试试这个:

return preg_match("/^[a-z-]+$/i", $string);