Javascript中的自定义电子邮件验证
我正在使用正则表达式进行Javascript电子邮件验证 我正在使用下面的函数Javascript中的自定义电子邮件验证,javascript,regex,validation,email-validation,Javascript,Regex,Validation,Email Validation,我正在使用正则表达式进行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,}
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);
}
但如果我尝试验证类似的东西
validateEmail('m@com.com'); // return true
根据正则表达式,这是正确的
我需要的是,它还将验证“.”前后的文本“com”,这样两个文本就不应该是相同的
任何帮助都将不胜感激……:) 我在上面的代码中做了一些修饰性的修改,效果很好:) 下面是已更改的功能,在该功能中,将重新检查有效电子邮件中“@”之后但“.”之前和之后的文本
…但是
com.com
是一个真正的网站吗?为什么com.com
是一个真正的域名,人们可以在其中拥有一个电子邮件帐户。就像这只是一个场景一样,它可以是任何域名文本,比如“xyz@gmail.gmail“或者其他任何相同的文本。我真的不会担心JS电子邮件验证。。。基本验证就足够了-如果您需要用户提供的真正有效的电子邮件地址-强制注册/通过电子邮件登录。。。
validateEmail('m@com.com'); // return true
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,}))$/;
if(re.test(email)){
var afteratRate = email.substr(email.indexOf("@") + 1);
var spmail = afteratRate.split(".");
if(spmail[0] === spmail[1]){
return false;
}
}
return re.test(email);
}
validateEmail('m@.com'); // gives false
validateEmail('m@s.com'); // gives true
validateEmail('test@gmail.com'); // gives true
validateEmail('test@com.com'); // gives false