我有一个简单的JS函数来验证这样的电子邮件(更复杂的代码片段不起作用,所以我评论它并简化了我的内容,但它仍然无法工作):
function validateEmail(email) {
//var re = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
//return re.test(email);
var re = /\S+@\S+\.\S+/;
return re.test(email);
}
console.log(`TESTING THE VALIDATE FUNCTION - GMAIL@GMAIL.COM RETURNS: ${validateEmail("gmail@gmail.com")}`);

当我在控制台中运行它时,它工作正常。当我从我的代码(A / B测试工具)运行它时,它每次都返回false,即使我期望是真的。我觉得我需要把头靠在墙上,因为我无法弄明白。知道为什么会这样吗?
答案 0 :(得分:1)
发现我使用的工具会自动转义我的正则表达式字符串中的某些字符。结果我的字符串没有被正确评估。对于那些感兴趣的人,我使用的A / B测试工具是SiteSpect。