Email Regular Expression Issue
我创建了以下正则表达式来验证我的电子邮件
1
| ^[_a-z0-9-]+(\.[_a-z0-9-])+@[a-z0-9-]+\.[a-z0-9-]+$ |
现在,我所面临的问题是,一封以下格式的电子邮件也被接受了
号
我希望正则表达式强制要求电子邮件地址在末尾包含".com/info/net",并且上述电子邮件格式应标记为无效。
我怎么能做到
- 事实上,谷歌已经可以申请一个"Gmail"顶级域名。这很贵,但可以做到:)
- 你不需要重新发明轮子;网上有很多关于电子邮件regexp的例子和讨论。
- @Á;lvarog.vicario是的……考虑到他们拿到了钱。:)但在我的情况下,我想在最后强制执行.com,我怎样才能做到这一点呢?
- 可能重复的php电子邮件验证问题?.这个问题讲的是PHP,但公认的答案是完全不可知语言的。
- 例如parrot.com/~pdw/mail-rfc822-address.html
- stackoverflow.com/questions/201323/…副本
- 您也不允许使用大写字母。另外,该regex实际上不接受您所说的字符串。
- 可能重复的javascript正则表达式电子邮件验证
- 这不是一个重复,因为他希望约束域,而这些问题中没有一个能回答这个问题。
- @或者,我想发布一个特定于领域的问题,因为这可能对其他想要实现它的人有所帮助。
- @是的,我忽略了那个。谢谢你的小费
- 你为什么要限制TLD?那.me,.us,.gov,.name等呢?
你需要逃避-在你的字符类,但电子邮件地址仍然应该失败。
尝试:
1
| ^[a-zA-Z0-9][a-zA-Z0-9\._%\-\+]+@[a-zA-Z0-9\.\-]+\.[a-zA-Z]+$ |
号
即使这个问题不包括所有有效的电子邮件地址,尽管…
- 谢谢。。。是的,你是对的……它不会覆盖所有有效的电子邮件地址…我可以继续玩……:)
1
| ^[_a-z0-9-]+(\.[_a-z0-9-])+@[a-z0-9-]+\.(?:[A-Z]{2}|com|org|net|info)$ |
试试看。您可以添加任意多的其他域限制。只是把它们分开|
您可以访问以下网站:http://www.regular-expressions.info/了解有关regex的更多信息,http://www.regular-expressions.info/email.html了解有关电子邮件的特定帮助。
- 谢谢。。。我将查看您提到的站点,以了解您构建的正则表达式:)