结合RegEx' s

时间:2014-12-16 15:47:28

标签: javascript jquery regex

我有两个正在尝试合并的正则表达式。一个是特定于电子邮件,另一个是检查某些特殊字符。经过多次玩弄后,我已经达到了这个解决方案:

"^([-0-9a-zA-Z.+_]+@[-0-9a-zA-Z.+_]+\.[a-zA-Z]{2,4}|[\\w\\-ÀÈÌÒÙàèìòùÁÉÍÓÚÝáéíóúýÂÊÎÔÛâêîôûÃÑÕãñõÄËÏÖÜŸäëïöüŸçÇŒœßØøÅåÆæÞþÐð _]){0,80}$"

它似乎确实检查了我需要它,但是例如以下内容仍然有效:abc@foo它不会强制使用完整的电子邮件地址。

我使用正确的方法还是有更简单的方法来构建此RegEx?我正在使用正则表达式进行学习,因此所有建议都值得赞赏。

1 个答案:

答案 0 :(得分:1)

将乘数{0,80}移到括号内:

"^([-0-9a-zA-Z.+_]+@[-0-9a-zA-Z.+_]+\.[a-zA-Z]{2,4}|[\\w\\-ÀÈÌÒÙàèìòùÁÉÍÓÚÝáéíóúýÂÊÎÔÛâêîôûÃÑÕãñõÄËÏÖÜŸäëïöüŸçÇŒœßØøÅåÆæÞþÐð _]{0,80})$"
//                                                                                                                      here __^^^^^^^

同样[a-zA-Z]{2,4}验证顶级域名(TLD)真的很差,请查看IANA

me@localhost是有效的电子邮件地址。

相关问题