【问题标题】:Email Regular Expression Issue电子邮件正则表达式问题
【发布时间】:2012-02-26 02:52:10
【问题描述】:

我创建了以下正则表达式来验证我的电子邮件

^[_a-z0-9-]+(\.[_a-z0-9-])+@[a-z0-9-]+\.[a-z0-9-]+$

现在我面临的表达问题是以下格式的电子邮件也被接受了

abc_xyz@gmail

我希望正则表达式强制电子邮件地址应在末尾包含".com/info/net",并且上述电子邮件格式应标记为无效。

我怎样才能做到这一点

【问题讨论】:

  • 其实谷歌已经可以申请“gmail”顶级域名了。这很贵,但可以做到:)
  • 你不需要重新发明轮子;网络上有很多关于电子邮件正则表达式的示例和讨论。
  • @ÁlvaroG.Vicario 是的.. 考虑到他们拿到了钱。 :) 但在我的情况下,我想最后强制执行.com,我怎样才能做到这一点
  • 您也不允许使用大写字母。此外,该正则表达式实际上并不接受您所说的字符串。

标签: javascript jquery


【解决方案1】:
^[_a-z0-9-]+(\.[_a-z0-9-])+@[a-z0-9-]+\.(?:[A-Z]{2}|com|org|net|info)$

试试看。您可以根据需要添加任意数量的其他域限制。只需用 | 将它们分开

您可能希望查看此站点:http://www.regular-expressions.info/ 了解有关正则表达式的更多信息,http://www.regular-expressions.info/email.html 了解有关电子邮件的具体帮助。

【讨论】:

  • 谢谢...我会看看您提到的网站以了解您构建的正则表达式:)
【解决方案2】:

您需要转义 - 在您的角色类中,但该电子邮件地址仍然应该失败。

尝试:

^[a-zA-Z0-9][a-zA-Z0-9\._%\-\+]+@[a-zA-Z0-9\.\-]+\.[a-zA-Z]+$

尽管这个问题并没有涵盖所有有效的电子邮件地址...

【讨论】:

  • 谢谢...是的,您是对的...它不会涵盖所有有效的电子邮件地址...我可以继续使用它...:)
猜你喜欢
  • 2011-04-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-03
  • 2011-12-28
  • 2012-01-02
  • 2015-12-03
相关资源
最近更新 更多