PHP正则expression式:没有find结尾分隔符“^”

我在正则expression式中遇到了一些麻烦。

这是我的代码

$pattern = "^([0-9]+)$"; if (preg_match($pattern, $input)) echo "yes"; else echo "nope"; 

我运行它并得到:

警告:preg_match()[function.preg-match]:找不到结尾分隔符'^'

PHP的正则expression式string需要分隔符。 尝试:

 $numpattern="/^([0-9]+)$/"; 

另外请注意,你有一个小写字母o,而不是零。 另外,如果你只是validation,你不需要捕获组,并且可以将正则expression式简化为/^\d+$/

例如: http : //ideone.com/Ec3zh

另请参阅: PHP – 分隔符

您的正则expression式模式需要在分隔符中:

 $numpattern="/^([0-9]+)$/";