检查JS中的正则表达式的有效电子邮件地址失败

时间:2016-07-22 04:21:30

标签: javascript jquery

为什么不是警报触发器

if ( /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test('x@')){  
    alert('Please make sure the email is valid.');
}

3 个答案:

答案 0 :(得分:1)

因为您已将逻辑反转 - 如果某些内容 是有效的电子邮件地址,则会发出警告。

if ( valid email address ) { alert }x@不是有效的电子邮件地址。没有警报。

尝试!反转测试结果:

if (! /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test('x@') ) {
    alert('Please make sure the email is valid.');
}

答案 1 :(得分:0)

使用以下功能。

    function IsValidEmail(emailText) {
    var atpos = emailText.indexOf("@");
    var dotpos = emailText.lastIndexOf(".");
    if (atpos < 1 || dotpos < atpos + 2 || dotpos + 2 >= emailText.length) {
        return false;
    }
    return true;
}

答案 2 :(得分:0)

  

你可以使用这个。它会在[dot] 2,3之后支持   根据您的域名

var email_filter  = /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
    if (email_filter.test('yourEmail@gmail.com')) {
      alert('Email is valid');
    }