我目前使用这个表达式在我的PHP脚本来验证电子邮件地址:正则表达式类型的区别?
preg_match_all("/[\._a-zA-Z0-9-][email protected][\._a-zA-Z0-9-]+/i", $string, $matches);
问题是,这个特定的正则表达式是不可靠的,经常发现一些假阳性。
我在看regexlib.com找到一个更好的,但我从那个网站得到的人都没有找到匹配。
例如:
preg_match_all("^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$", $string, $matches);
觉得没有什么,即使它应该根据regexlib工作。我已经尝试了regexlib中用于电子邮件验证的前10个正则表达式,并且它们都不起作用。难道我做错了什么?
链接regexlib电子邮件分类:http://regexlib.com/DisplayPatterns.aspx?cattabindex=0&categoryId=1
感谢,