PHP - Perl兼容的正则表达式

时间:2012-04-07 11:58:40

标签: php regex validation filter email-validation

如何启用此正则表达式

[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?

来自此网站:http://www.regular-expressions.info/email.html

在FILTER_VALIDATE_REGEXP下的filter_var函数中PHP所需的Perl兼容regexp?

如果我只是将其添加到选项中,我会收到此错误: filter_var()[function.filter-var]:......中的未知修饰符'+'

1 个答案:

答案 0 :(得分:2)

您需要使用delimiter包装表达式(/是最常用的):

/[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?/