首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用于验证电子邮件的RegEx

用于验证电子邮件的RegEx
EN

Stack Overflow用户
提问于 2014-02-06 16:19:32
回答 3查看 321关注 0票数 0

我搜索了这个网站,发现了许多处理这个主题的线程。但不知道为什么没有人意识到电子邮件格式有很大的差异,而不限于xxx@ddd.com或类似的东西,例如,xxxx@ddddd.rr.com是有效的电子邮件地址,xxx@ddd.museum也是。我尝试了几乎所有用于验证电子邮件的正则表达式,但没有一个用于验证。还有.info,.museum等的电子邮件。

我在正则表达式方面很差。我只是想知道是否有人可以写一个非常宽泛的表达,检查“至少一个”和一个或多个点,没有逗号)。我知道它不会完美地工作,但至少它不会拒绝有效的电子邮件地址。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-02-06 16:33:11

我最好的选择是\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*。这是石头。

微软的官方电子邮件regex,这是我从我的visual终极2013获得的:)

票数 0
EN

Stack Overflow用户

发布于 2014-02-06 16:27:06

我想这是可行的:\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]+\b

票数 1
EN

Stack Overflow用户

发布于 2014-02-06 19:06:35

由于您的问题似乎集中在捕捉“@”之后的内容,因此我将简单地发布其正则表达式。下列各点应适用于你:

代码语言:javascript
运行
复制
@((\w+(-+\w+)*\.)+\w+(-+\w+)*\b

要将其分解,这将捕获:

  1. @
  2. 至少重复一次“单词”(可以包括,但不以破折号开头或结尾),后面跟着一个点:((\w+(-+\w+)*)\.)+
  3. 最后一个“单词”(同样,它可以包括,但不以破折号开头或结尾):\w+(-+\w+)*\b

为了分解"word“regex \w+(-+\w+)*),我捕捉到:

  1. 至少有一个字母数字字符\w+
  2. 任意数量的以下内容:
    1. 至少有一个破折号-+跟在后面
    2. 至少有一个字母数字字符\w+

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21608294

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档