Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否使用正则表达式验证和筛选电子邮件地址?_Javascript_Regex_Validation_Email Validation - Fatal编程技术网

Javascript 是否使用正则表达式验证和筛选电子邮件地址?

Javascript 是否使用正则表达式验证和筛选电子邮件地址?,javascript,regex,validation,email-validation,Javascript,Regex,Validation,Email Validation,使用正则表达式和Javascript电子邮件字段验证禁止免费电子邮件服务电子邮件(如Gmail、Yahoo、Hotmail)的最佳方法是什么 ^.*@(?!(aol\.com$|yahoo\.com$|hotmail\.com$))$ 我在这里看到了通用的“在Javascript中验证电子邮件地址”解决方案,但我不知道如何使其不允许Gmail、Yahoo和Hotmail [a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`

使用正则表达式和Javascript电子邮件字段验证禁止免费电子邮件服务电子邮件(如Gmail、Yahoo、Hotmail)的最佳方法是什么

^.*@(?!(aol\.com$|yahoo\.com$|hotmail\.com$))$
我在这里看到了通用的“在Javascript中验证电子邮件地址”解决方案,但我不知道如何使其不允许Gmail、Yahoo和Hotmail

[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+(?:[A-Z]{2}|com|org|net|edu|gov|mil|biz|info|mobi|name|aero|asia|jobs|museum)\b

数千种可接受的方法中的一种——并不是说你的方法不可接受

function isGoodEmail(email) {
    if(isValidEmail(email)) {
        if(/(aol|gmail|yahoo|hotmail)\.com$/.test(email)) {
           alert(' valid email, but not for this site.  No free service emails!');
           return false;
        }
        return true;
    }
    return false;
}

function isValidEmail(email) {
  // implement using any of the email regexp's available 
}

你必须使用正则表达式吗?你能在
@
上进行拆分,然后与TLD黑名单进行比较吗?我使用的是第三方表单框架,允许正则表达式进行自定义验证。因此,我必须使用正则表达式。我必须使用正则表达式。很抱歉造成混淆。我将确保编辑该问题。