JSLint的Javascript电子邮件正则表达式问题?
我正在尝试使用以下功能验证电子邮件地址的格式是否正确。JSLint的Javascript电子邮件正则表达式问题?,javascript,regex,escaping,email-validation,jslint,Javascript,Regex,Escaping,Email Validation,Jslint,我正在尝试使用以下功能验证电子邮件地址的格式是否正确。 此函数工作正常,但是它不会生成,因为JSLint给了我以下错误。 :错误(发生Lint):未跳过“[”。 我尝试过转义需要转义的字符,这修复了JSLint的问题,但是RegExp不再工作 有人帮我做什么吗 function validateEmail(email) { var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\ ".
此函数工作正常,但是它不会生成,因为JSLint给了我以下错误。
:错误(发生Lint):未跳过“[”。
我尝试过转义需要转义的字符,这修复了JSLint的问题,但是RegExp不再工作
有人帮我做什么吗
function validateEmail(email)
{
var re = /^(([^<>()[\]\\.,;:\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,}))$/
return email.match(re)
}
功能验证电子邮件(电子邮件)
{
变量re=/^(([^()[\]\\,;:\s@\“]+(\.[^()[\]\,;:\s@\“]+)*)|(\
“+\”)@(\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.]
-Z \-0-9]+\)+[a-zA-Z]{2,}))$/
返回电子邮件。匹配(re)
}
如果在字符类中转义开头的“
[
”(以及结尾的“]
”),则可以尝试使用此正则表达式来解决问题:
var re = /^(([^<>()\[\]\\.,;:\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,}))$/;
var re=/^([^()\[\]\\,;:\s@\“]+(\.[^()\[\]\,;:\s@\“]+)*(\“+”)(\[[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[1,3}]);([a-zA 0-Z-0-9]+[a-Z]/];
我刚刚检查了这个,它似乎消除了错误。这一次给出了相同的lint错误,没有替换“-”。因此,当我跳过“-”时,正则表达式不再工作
var re = /^(([^<>()\[\]\\.,;:\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,}))$/;