发布网友 发布时间:2022-04-23 05:27
共2个回答
懂视网 时间:2022-04-23 09:48
这次给大家带来容易产生错误的js手机号码验证,容易产生错误js手机号码验证的注意事项有哪些,下面就是实战案例,一起来看一下。写一个简单的正则表达式,用来校验11位手机号码,开头允许是13、15、18,我一开始这样写:
var reg = /^(13[0-9]{9})|(15[0-9]{9})|(18[0-9]{9})$/;
运行发现,即使是 13988888877157777,也能通过验证,这说明这个写法错了,我的本意是希望这样:
^(13[0-9]{9})$ 或者 ^(15[0-9]{9})$ 或者 ^(18[0-9]{9})$
所以正确写法是:var reg = /^1[358][0-9]{9}$/;
这样才能保证11位数字
相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!
推荐阅读:
正则中的lastIndex使用详解
正则中的平衡组使用详解(附代码)
热心网友 时间:2022-04-23 06:56
这个很好理解的,全局查找的第一次是从开头找起,能找到,第二次找的时候是从你第一次找到的位置开始继续向后找,这时就找不到了,由于第二次找的时候已经找到的结尾处,所有第三次找的时候又是从开头找起,所有第三次能找到,第四次和第二次情况一样,依次类推。你那个正则表达式是有问题的,因为你没有匹配开头和结尾,所有我在手机号前后加内容是能通过验证的。