function validateEmail(email) {
var re =/^[a-z_A-Z\-0-9\.\*\#\$\!\~\%\^\&\-\+\?\|]+@+[a-zA-Z\-0-9]+(.com)$/;
return re.test(email);
}
Javascript 电子邮件验证。功能正常,但 .com 区分大小写(这些功能只接受小写字母)。我想在 .com 中不区分大小写。
function validateEmail(email) {
var re =/^[a-z_A-Z\-0-9\.\*\#\$\!\~\%\^\&\-\+\?\|]+@+[a-zA-Z\-0-9]+(.com)$/;
return re.test(email);
}
Javascript 电子邮件验证。功能正常,但 .com 区分大小写(这些功能只接受小写字母)。我想在 .com 中不区分大小写。
在 var re 之后添加“i”:
var re =/^[a-z_A-Z\-0-9\.\*\#\$\!\~\%\^\&\-\+\?\|]+@+[a-zA-Z\-0-9]+(.com)$/i;
请参阅:https ://developer.mozilla.org/en/docs/JavaScript/Reference/Global_Objects/RegExp
在这种情况下:重复检查 az AND AZ 是多余的。利用:
var re =/^[a-z_\-0-9\.\*\#\$\!\~\%\^\&\-\+\?\|]+@+[a-z\-0-9]+(.com)$/i;
推荐解决方案:
1) 使用忽略大小写标志i
,如下所示:/your regex/i
. 然后,您也可以在字符类中省略大写字母。
其他可能性(虽然不推荐):
2)将您的字符串转换为小写email.toLowerCase()
。您可以使用这个删除字符类中的大写字母。
3) 包括以下模式(\.[Cc][Oo][Mm])
,而不是(.com)
- 它的功能过于冗长。
边注:
您需要在 com: 之前转义点,(\.com)
否则它将匹配任意字符
在进行验证之前将电子邮件地址中的所有字符转换为小写。
试试这个,因为电子邮件 ID 不区分大小写
return re.test(email.toLowerCase());