?? ?? 一般表單頁面都需要填寫手機號,校驗用戶輸入的手機號碼是否正確饼暑,就要用到正則表達式稳析,用正則表達式來匹配手機號段,如在運營商號段內(nèi)弓叛,則號碼正確彰居。因此,需要知道運營商最新的號段撰筷,如下所示:
各大運營商手機號碼段(新)
中國電信號段
133陈惰、153、173毕籽、177奴潘、180、181影钉、189画髓、190、191平委、193奈虾、199
中國聯(lián)通號段
130、131廉赔、132肉微、145、155蜡塌、156碉纳、166、167馏艾、171劳曹、175、176琅摩、185铁孵、186、196
中國移動號段
134(0-8)房资、135蜕劝、136、137、138岖沛、139暑始、1440、147婴削、148蒋荚、150、151馆蠕、152期升、157、158互躬、159播赁、172、178吼渡、182容为、183、184寺酪、187坎背、188、195寄雀、197得滤、198
中國廣電號段
192
其他號段
14號段部分為上網(wǎng)卡專屬號段:中國聯(lián)通145,中國移動147盒犹,中國電信149
虛擬運營商:
電信:1700懂更、1701、1702急膀、162
移動:1703沮协、1705、1706卓嫂、165
聯(lián)通:1704慷暂、1707、1708晨雳、1709行瑞、171、167
衛(wèi)星通信:1349悍募、174
物聯(lián)網(wǎng):140蘑辑、141、144坠宴、146、148
?? ?? 通過以上號段可以看出绷旗,手機號碼起始1喜鼓,第二位是3456789中的任意一個,第三位有的是0-9全段庄岖,有的只是部分,如下:
13和18開頭的手機號是全段
13開頭的手機號是全段:13 [0123456789] 比如130隅忿,131心剥,132…139
18開頭的手機號是全段:18[0123456789] 比如180优烧,181,182…189
15和19開頭的手機號后面除4外都有链峭,無154和194
15 [012356789] 比如150,151弊仪,152,153励饵,155…159
19 [012356789] 比如190驳癌,191役听,192,193禾嫉,195…159
17開頭的手機號后面除9外都有
17 [01235678] 比如170,171熙参,172艳吠,173…178
14開頭的手機號除2,3外都有,無142和143
14[01456879] 比如140,141,144孽椰,145…149
16開頭的手機號后面只有2567
16[2567] 比如:162,165,166,167
了解了運營商的最新號段昭娩,下面就寫出手機號驗證的最新正則表達式:
/^(13[0-9]|14[01456879]|15[0-3,5-9]|16[2567]|17[0-8]|18[0-9]|19[0-3,5-9])d{8}$/
在JavaScript中的示例:
<script>
var reg_user = /^[u4e00-u9fa5]{2,4}$/; //2-4個中文字符正則
var reg_tel = /^(13[0-9]|14[01456879]|15[0-3,5-9]|16[2567]|17[0-8]|18[0-9]|19[0-3,5-9])d{8}$/; //11位手機號碼正則
function checkSubmit() {
if (document.form.user.value =="") {
alert("姓名不能為空!");
document.form.user.focus();
return false;
} else if (!reg_user.test(document.form.user.value)) {
alert("姓名只能為2-4中文黍匾!");
document.form.user.focus();
document.form.user.select();
return false;
}
if (document.form.tel.value =="") {
alert("請?zhí)顚懩氖謾C號碼栏渺!");
document.form.tel.focus();
document.form.tel.select();
return false;
} else if (!reg_tel.test(document.form.tel.value)) {
alert("請正確填寫您的手機號碼!");
document.form.tel.focus();
document.form.tel.select();
return false;
}
}
</script>
因為手機號都是以1開始的锐涯,所以也可以這樣寫:
/^1(3[0-9]|4[01456879]|5[0-3,5-9]|6[2567]|7[0-8]|8[0-9]|9[0-3,5-9])d{8}$/
這是把所有運營商號段寫在一起的磕诊,包括虛擬運營商、物聯(lián)網(wǎng)等,大家也可以根據(jù)項目需求來寫霎终。
表單字段驗證常用正則表達式
1滞磺、姓名
/^[u4e00-u9fa5]{2,4}$/ //2-4個中文字符正則
2、手機號碼
/^(13[0-9]|14[01456879]|15[0-3,5-9]|16[2567]|17[0-8]|18[0-9]|19[0-3,5-9])d{8}$/
3莱褒、座機號碼
/^(0d{2,3})-?(d{7,8})$/
4击困、電子郵箱
/^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$/
5、身份證號碼
/(^d{15}$)|(^d{18}$)|(^d{17}(d|X|x)$)/
6广凸、QQ號碼
/^[1-9][0-9]d{4,9}$/
7阅茶、郵政編碼
/^[1-9]d{5}$/
8、注冊賬號
/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/