在javascript中输入正则表达式

时间:2016-05-25 08:05:53

标签: javascript

我试图添加这个正则表达式^ [a-zA-Z0-9,。&# - ] {1-45} @ [a-zA-Z] {1-45}。[az] {3 } $验证此javascript代码的电子邮件地址。

if(email=="" || email==null) 
    {               
        document.getElementById("em_error").innerHTML="*You must enter your Email Address";
        error=true;
        return false;
    }
else
    document.getElementById("em_error").innerHTML="";       

2 个答案:

答案 0 :(得分:1)

您可以使用match功能。

if(email=="" || email==null || !email.match(/^[a-zA-Z0-9,.&#-]{1-45}@[a-zA-Z]{1-45}.[a-z]{3}$/,i)) 

注意

请检查您的模式,因为应该有更长和更短的TLD,然后是3个字符,例如.museum.eu.nowanytldcantakenformoney

答案 1 :(得分:0)

如下所示更改您的代码(使用RegExp.test功能):

...
var re = /^[a-zA-Z0-9,.&#-]{1-45}@[a-zA-Z]{1-45}.[a-z]{3}$/;
if (!email || !re.test(email)) {  // if the input value is empty or doesn't match the needed pattern
    document.getElementById("em_error").innerHTML="*You must enter your Email Address";
    error = true;
    return false;
} else {
    document.getElementById("em_error").innerHTML="";
}

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/test