网上查了很多资料,
phone 格式 138 0013 8000
代码如下
var pNumber = phone.val().replace(/\s/g,"");
if ( pNumber.length == 0 ) throw "手机号不能为空!";
if ( pNumber.length != 11 ) throw "请输入有效的手机号码!";
var result = /^(13\d|15[012356789]|166|17[01235678]|18\d|19[89])\d{8}$/.test( pNumber );
if (!result) throw "验证不通过!";
验证出来的结果 是 失败的,但是获取的手机号又是没问题的(第一句过替换了空格),请问这是为什么呢?
1
gzlock 2019-01-22 07:39:44 +08:00 via Android
1[3-9]\d{9}
就现在的手机号复杂程度,简单点算啦 |
2
AvenirX 2019-01-22 07:45:38 +08:00 via iPhone
正则没问题啊,是哪一句失败了?
phone.val() 是什么内容? |
3
glaucus 2019-01-22 09:10:32 +08:00
|
4
Steps OP |
6
Steps OP 解决了,谢谢各位,原来是 Smarty 自动把 正则的 {9}给转译了,所以无法识别!
|
7
scandal 2019-01-22 14:01:34 +08:00
14 号码也有了
|