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

如何修改手机号正则验证函数,使长度超10位时返回false?

修改手机号验证器以匹配恰好10位数字

你当前的正则/\d{10}/只会检查字符串中是否存在连续10位数字,哪怕字符串更长(比如11位数字)或者前后有其他字符,只要包含10位连续数字就会返回true,这不符合“恰好10位数字”的需求。

要解决这个问题,需要给正则添加字符串边界锚点:

  • ^ 匹配字符串的起始位置
  • $ 匹配字符串的结束位置

通过这两个锚点,就能强制要求整个字符串必须完全匹配10位数字,没有多余内容。

修改后的代码如下:

function telephoneChecker(str){
  return /^\d{10}$/.test(str)
}

测试示例:

  • telephoneChecker('5555555555') → 返回true(符合要求的10位数字)
  • telephoneChecker('55555555555') → 返回false(11位数字,长度超出)
  • telephoneChecker('555555555a') → 返回false(包含非数字字符)
  • telephoneChecker(' 5555555555') → 返回false(开头有空格)

这样就能精准验证字符串是否恰好是10位数字了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 06:13:12