正则表达式用于电子邮件验证
我写了下面的正则表达式来进行一个非常简单的电子邮件验证。 我打算发送确认链接。
/.*@[a-z0-9.-]*/i
但是,我想要从当前状态中增强它,因为像这样的字符串不会产生所需的结果:
测试,my.name + test @ gmail-something.co.uk,测试
“测试”部分不合需要地包含在比赛中。 我尝试使用单词边界失败。
谢谢!
代替 。 尝试匹配 s(空格)之外的每个字符:
/[^s]*@[a-z0-9.-]*/i
这是一个复杂得多 ! 查看Mail :: RFC822 :: Address并被吓坏了......非常害怕。
不要使用正则表达式来验证电子邮件地址
相反,从Ben Finney写的mail.python.org/pipermail/python-list1。
当人们问我“如何验证电子邮件地址是否有效?”时,我看到了最好的建议。 是“尝试发送邮件给它”。
这既是Pythonic,也是最好的方式。 如果你确实想确认,不要试图静态验证; 使用电子邮件地址,并检查结果。 发送电子邮件至该地址,除非您收到收件人回复“是的,这是正确的地址”,否则请不要再使用它。
发送系统的邮件传输代理(而不是正则表达式)决定哪个部分是发送邮件的域。
域名系统(不是正则表达式)确定哪些域有效,哪些主机应该接收该域的邮件。
最特别的是,接收邮件系统,而不是正则表达式,决定哪些本地部分是有效的。
1这是死亡之前的原始链接
链接地址: http://www.djcxy.com/p/16559.html上一篇: regex for email validation
下一篇: PHP email validation