首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Emailvalidation

问Emailvalidation
EN

Stack Overflow用户
提问于 2013-09-09 08:46:34
回答 1查看 48关注 0票数 0

我意识到验证电子邮件的麻烦。我不是在找“regex墙”。我只是想修复我已经拥有的正则表达式。

代码语言:javascript
复制
^[\p{L}0-9!$'*+\-_]+(\.[\p{L}0-9!$'*+\-_]+)*@[\p{L}0-9]+(\.[\p{L}0-9]+)*(\.[\p{L}]{2,})$

这个正则表达式验证了大多数电子邮件,甚至unicode字符。我很难让它处理包含破折号的域名。

你能帮我把域验证部分扩展到包含破折号吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-09 12:53:04

[\p{L}0-9]+在@之后的两个实例都必须将-添加到字符组中,例如[\p{L}0-9-]+。你可能会想把它扩展到不允许引导和尾随连字符,尽管你越深入地让你的表达反映现实,你就会越接近那道regex墙。

请注意,IDNA (域部分)和RFC 6531 (本地部分)都没有将Unicode字符限制为信函类。

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

https://stackoverflow.com/questions/18694546

复制
相关文章

相似问题

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