You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调整JavaScript邮箱验证正则,仅匹配hhhh.ggh@gmail.com格式?

邮箱验证规则调整方案

问题说明

现有JavaScript邮箱验证代码可匹配hhhh.ggggh@gmail.com和hhhh.ggh@gmail.com,但需调整为仅接受hhhh.ggh@gmail.com格式的邮箱(即@gmail.com前必须是「任意长度字母 + 英文点号 + 恰好3个字母」的结构)。

原代码

var a = document.getElementById("email").value;
var check = /[A-za-z]{3}@gmail.com\b/i;
console.log(check.test(a), "true", a, check)
if(check.test(a) == true)
{
    alert("correct")
}
else if(check.test(a) == false){
    alert('false')
}

修改后的代码

var a = document.getElementById("email").value;
// 调整正则:限定@前为「任意字母+点+恰好3个字母」,严格匹配gmail.com格式
var check = /^[A-Za-z]+\.[A-Za-z]{3}@gmail\.com$/i;
console.log(check.test(a), a, check)
if(check.test(a)) {
    alert("correct")
} else {
    alert('false')
}

调整说明

  • 正则^[A-Za-z]+\.[A-Za-z]{3}@gmail\.com$的核心规则:
    • ^与$:限定匹配整个字符串,避免前后出现多余字符
    • [A-Za-z]+:匹配任意数量(至少1个)的大小写字母
    • \.:转义匹配英文点号(原正则未转义的.会匹配任意字符,导致错误匹配)
    • [A-Za-z]{3}:强制匹配恰好3个大小写字母,符合目标格式要求
    • i:忽略大小写,兼容大小写混合的输入场景
  • 简化条件判断:check.test(a)本身返回布尔值,无需额外与true/false做比较

内容的提问来源于stack exchange,提问作者Akshay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 05:14:58