如何验证我的email-Id字段?

时间:2014-09-26 09:05:07

标签: javascript regex

我使用过这个正则表达式。 此脚本不应允许此操作: ________ @ domain.com

请帮我避免这个问题。

"email": {
           // HTML5 compatible email regex ( http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#    e-mail-state-%28type=email%29 )
           "regex": /^(([^<>()[\]\\.*+,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@[^-]((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
           "alertText": "* Ex: user@domain.com"
         },

4 个答案:

答案 0 :(得分:2)

只需添加一个预测即可匹配在@之前至少包含一个数字或字母的电子邮件地址。

(?=^[^@]*[\dA-Za-z][^@]*@)^(([^<>()[\]\\.*+,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@[^-]((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$

DEMO

这确保在@符号之前必须至少有一个数字和一个字母。

(?=^[^@]*\d[^@]*@)(?=^[^@]*[A-Za-z][^@]*@)^(([^<>()[\]\\.*+,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@[^-]((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$ 

DEMO

答案 1 :(得分:0)

也许可以这样:\ w +([ - +。'] \ w +) @ \ w +([ - 。] \ w +)。\ w +([ - 。] \ w +)*

答案 2 :(得分:0)

试试这个

/ ^([\ W - 。] +)。@(([0-9] {1,3} [0-9] {1,3} [0-9] {1,3} 。)|((\ W - ] +。)+))([A-ZA-Z] {2,4} | [0-9] {1,3})(])$ /;?

答案 3 :(得分:0)

尝试在此表达式的开头添加类似 [A-za-z] 的内容。 因此,您必须在_ ...

之前输入至少一个字母
"email": {                 
                    "regex": /^ [A-Za-z](([^<>()[\]\\.*+,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@[^-]((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
                    "alertText": "* Ex: user@domain.com"
                },