js手机号最新正则表达式,开放规则快速扩展测试功能

开发支持手机号码的正则,集网络通用手机验证规则,稳定又高效,但是网络发展迅速,各个运营商也陆续开放新的号码段,于是以前的正则需要更新,此文章提供一个快速扩展测试手机验证码规则的函数代码,有新的规则更新也可评论或私信我会更新维护(同时说上官方更新依据)

代码、规则更新记录2022-03-09

function testPhoneNumber(phone){
  // 手机号正则表达式更新于2022-03-09
    const phoneRegex = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/
  return phoneRegex.test(phone)
}
function testFields(fieldsStr){
  const fArr = fieldsStr.split('、')
  fArr.forEach(d=>{
    console.log(`testing ${d}, result is:${testPhoneNumber(d+'00000000')}`)
  })
}
// 各个运营商的号码段规则,逗号隔开
// 移动号段,逗号隔开
let chinaMobile = '134、135、136、137、138、139、147、148、150、151、152、157、158、159、178、182、183、184、187、188、198、144、170'
// 联通号段
let chinaUnicom = '130、131、132、155、156、185、186、145、146、166、167、175、176、170、171'
// 电信号段
let chinaTelecom = '133、153、177、180、181、189、191、199、134、141、170、174'

testFields(chinaUnicom)

以上代码测试如果全部打印为true代表录入的号码段的测试通过。

你可能感兴趣的:(正则表达式,前端,javascript)