正则表达式将电子邮件地址与地址标签进行匹配
可能重复:
有一个用于电子邮件地址验证的PHP库吗?
如何在php5中验证电子邮件?
我知道有很多关于电子邮件地址正则表达式的问题。 我的问题有一个具体的要求,我一直无法找到答案。
我需要一个匹配电子邮件地址的正则表达式, 并允许使用地址标记 ,例如“testing+tags@gmail.com”。 我发现大多数正则表达式在包含标签的电子邮件地址上失败。
请注意,请不要将我指向此链接。 我正在寻找一些实用的,而不是完美的
编辑我知道大多数Web应用程序框架中内置验证的存在。 RoR,PHP,Django等都有它的内置。有时,无论出于何种原因,都有特殊的需求。 也许用户不能使用验证。 也许他们正在用一些晦涩难懂的语言编写应用程序,这些语言没有内置的验证功能,或者拥有它们,但它们已经过时。 在这种情况下,正则表达式仍然有用
我个人最喜欢的一直是这样的:
/A[w+-.]+@[a-zd-.]+.[a-z]+z/i
另一个流行的也是
/b[A-Z0-9._%+-]+@[A-Z0-9.-]+.[A-Z]{2,4}b/
如果你在PHP中这样做,如果可行的话,我会建议使用filter_var
,否则建议。 这只是一个建议,如果你需要一个实用的,理解为不完美的正则表达式。
你可以应该使用filter_var验证电子邮件,而不是
var_dump(filter_var('bob@example.com', FILTER_VALIDATE_EMAIL));
您的案例示例:
echo filter_var('bob+long@example.com', FILTER_VALIDATE_EMAIL) !== false? 'Valid': 'Invalid';
链接地址: http://www.djcxy.com/p/92717.html