【发布时间】:2014-11-06 02:46:18
【问题描述】:
当我在 php 5.3 中运行它时:
public function isValidEmail($email)
{
//$pattern = "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$";
return (preg_match($pattern, $email)) ? 1 : 0;
}
我收到这条消息:
Warning: preg_match() [function.preg-match]: No ending delimiter '^' in......
知道它应该是什么吗?
【问题讨论】:
-
你的正则表达式没有分隔符
$pattern = "/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/"; -
您的
$pattern也被注释掉了。 -
请务必使用 preg_quote 反斜杠您的模式中的任何其他斜杠,如下所示: $pattern = '/' 。 preg_quote("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+) *(\.[a-z]{2,3})$", '/') 。 '/';