您的位置:首页 > 其它

验证手机号码格式

2015-06-10 11:27 351 查看
以下是移动官方拔下来的正则表达式:

判断字符串是否是手机号码
0是手机号码 1不是11位数字 2号码前缀不正确
用于检验手机号的位数以及检验此手机中是否为中国移动的手机号*/
由于存在携号转网的情况 允许3个运营商的全部号段(试点中)*/
中国移动号码段:134(0至8号段) 135 136 137 138 139 147 150 151 152 157 158 159 178 182 183 184 187 188
中国联通号码段:130 131 132 145 155 156 175 176 185 186
中国电信号码段:133 153 177 180 181 189
虚拟运营商号码段:170

// 判断字符串是否是手机号码
// 0是手机号码 1不是11位数字 2号码前缀不正确
/* 用于检验手机号的位数以及检验此手机中是否为中国移动的手机号*/
/* 由于存在携号转网的情况 允许3个运营商的全部号段(试点中)*/
// 中国移动号码段:134(0至8号段) 135 136 137 138 139 147 150 151 152 157 158 159 178 182 183 184 187 188
// 中国联通号码段:130 131 132 145 155 156 175 176 185 186
// 中国电信号码段:133 153 177 180 181 189
// 虚拟运营商号码段:170
function isPhoneNumber(phone) {
var rv = 0;

var mbphnoM = /^(13[4-9])|^(147)|^(150)|^(151)|^(152)|^(157)|^(158)|^(159)|^(178)|^(182)|^(183)|^(184)|^(187)|^(188)/;
var mbphnoU = /^(130)|^(131)|^(132)|^(145)|^(155)|^(156)|^(175)|^(176)|^(185)|^(186)/;
var mbphnoT = /^(133)|^(153)|^(177)|^(180)|^(181)|^(189)/;
var mbphnoV =/^(170)/;

var num11 = /^\d{11}$/; //11位数字;

if (null != phone && "" != phone && num11.exec(phone)) {

if (mbphnoM.exec(phone) || mbphnoU.exec(phone) || mbphnoT.exec(phone) || mbphnoV.exec(phone)) {
rv = 0;
}
else {
rv = 2;
}
}
else {
rv = 1;
}

return rv;
}


View Code
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: