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

JavaScript正则验证:邮箱前缀为恰好10位数字的校验需求

解决邮箱前缀为10位数字的验证问题

我懂你要的是一个能同时满足合法邮箱格式和**@前恰好10位数字**的验证函数,你之前写的正则问题出在语法错误(比如重复写了@),也没精准限定前缀的长度。直接给你能落地的实现:

function validateEmailWith10DigitPrefix(email) {
  // 正则逻辑拆解:
  // ^ 锁定字符串开头,确保前缀没有多余字符
  // \d{10} 强制匹配恰好10位数字
  // @ 匹配邮箱必备的@分隔符
  // [^\s@]+ 匹配域名主体(不能包含空格和@)
  // \. 转义匹配域名里的点号
  // [^\s@]+$ 匹配域名后缀,同时锁定字符串结尾
  const emailRegex = /^\d{10}@[^\s@]+\.[^\s@]+$/;
  return emailRegex.test(email);
}

// 测试用例
console.log(validateEmailWith10DigitPrefix('8015551234@foobar.com')); // true(符合要求)
console.log(validateEmailWith10DigitPrefix('801555123@foobar.com')); // false(前缀仅9位)
console.log(validateEmailWith10DigitPrefix('abc12345678@foobar.com')); // false(前缀含非数字)
console.log(validateEmailWith10DigitPrefix('8015551234@foobar')); // false(缺少域名后缀)

规则细节说明:

  • ^\d{10}:严格限定字符串开头必须是连续10位数字,^避免前缀前出现其他字符,{10}精准控制长度
  • [^\s@]+:确保域名部分不会出现空格或额外的@符号,符合邮箱域名的基本规范
  • $:锁定字符串结尾,避免邮箱后面出现多余的无效字符

这个实现既满足了邮箱的合法格式要求,又严格校验了前缀的数字长度,完全贴合你的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 06:32:40