我有以下正则表达式:
var emailRegex = "^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$"
当我尝试输入时:
asd@asd
匹配。为什么呢?
答案 0 :(得分:2)
电子邮件服务不必连接到任何域。 以下电子邮件都是正确的:
在“有效的电子邮件地址”下查看更多内容:https://en.wikipedia.org/wiki/Email_address
因此,如果您只想允许公开发送电子邮件,请尝试其他正则表达式: - )
答案 1 :(得分:-3)
Validate email address in JavaScript?回答你的问题
试试这个:
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 re.test(email);
}
alert(validateEmail("test@gmail.com"));
&#13;