请问js高手,这个手机验证正则表达式为什么失效?

发布网友 发布时间:2022-04-23 02:03

我来回答

1个回答

热心网友 时间:2022-04-23 17:41

function isCellPhone(str) {
      var reg = /^1[358][0-9]{9}$/;
    return reg.test(str);
}

/^(13[0-9]{9})|(15[0-9]{9})|(18[0-9]{9})$/;表示 ^(13[0-9]{9})或者(15[0-9]{9})或者 (18[0-9]{9})$,你的那个号码匹配 ^(13[0-9]{9}),而且像 001500000000000000这样中间包括15在内11位数字的也可以通过验证

追问我还是不理解, /^(13[0-9]{9})|(15[0-9]{9})|(18[0-9]{9})$/ 究竟怎么错了?我的目的是:允许13开头的11位号码、15开头的11位号码、18开头的11位号码通过验证,按说001500000000000000不该通过验证啊?!因为它不是13、15、18开头的,也不是11位数啊

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com