国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Regex > 正文

javascript 手機號碼正則表達式驗證函數(shù)

2020-03-16 21:14:24
字體:
來源:轉載
供稿:網(wǎng)友

隨著手機號碼段的不斷增加,以前網(wǎng)上的手機號碼驗證函數(shù)都不能那么完美的支持了,這里武林網(wǎng)編輯特為大家準備的一個簡單的正則與手機驗證的函數(shù)分析。

復制代碼代碼如下:

function checkMobile(){

var sMobile = document.mobileform.mobile.value

if(!(/^1[3|4|5|8][0-9]/d{4,8}$/.test(sMobile))){

alert("不是完整的11位手機號或者正確的手機號前七位");

document.mobileform.mobile.focus();

return false;

}

}

下面是武林網(wǎng)編輯對上面正則表達式的簡單分析,隨著以后手機號碼段的增加,大家可以自己擴展功能,不懂正則的朋友看完這篇文章應該會了點啊。

主要是這段代碼了,以后大家修改這段就可以了

^1[3|4|5|8][0-9]/d{4,8}$

^1代表以1開頭,現(xiàn)在中國的手機號沒有是其它開頭的,以后不一定啊

[3|4|5|8] 緊跟上面的1后面,可以是3或4或5或8的一個數(shù)字,如果以后出現(xiàn)190開始的手機號碼了,就需要如下[3|4|5|8|9]

[0-9]表示0-9中間的任何數(shù)字,可以是0或9

/d{4,8} 這個/d跟[0-9]意思一樣,都是0-9中間的數(shù)字。{4,8}表示匹配前面的最低4位數(shù)字最高8位數(shù)字。這里為什么不是直接的8呢,因為手機號碼歸屬地查詢的時候,根據(jù)前7位就可以知道具體的地址了,后面的4位沒有影響的。

下面是測試代碼:

 

  1. <script type="text/javascript">  
  2. function checkMobile(){  
  3.     var sMobile = document.mobileform.mobile.value  
  4.     if(!(/^1[3|5][0-9]/d{4,8}$/.test(sMobile))){  
  5.         alert("不是完整的11位手機號或者正確的手機號前七位");  
  6.         document.mobileform.mobile.focus();  
  7.         return false;  
  8.     }  
  9. }  
  10. </script>  
  11. <form action="http://ip.vevb.com/sj/mobile2.asp" name="mobileform" method="post" onSubmit="return checkMobile();">  
  12. <INPUT name="mobile" class=tdc size="40" maxLength="11">  
  13. <INPUT name="action" type="hidden" value=mobile> <INPUT class=bdtj name=B1 type=submit value="查 詢">  
  14. </FORM>  
 
下面是武林網(wǎng)從別的網(wǎng)站找來的代碼。大家可以看下。另我們推薦大家學習下正則表達式,好多地方離開正則表達式真的不行。
/d 代表一個數(shù)字
例如:1或2或3,單個數(shù)字
如果是多個可以用/d*
/d{7,8} 代表7-8位數(shù)字(表示電話號碼)
例如:12345678
{7,8}表示7位或9位數(shù)字,一般電話號碼符合。
/d{3,} 代表分機號碼
例如:123,12345
{3,}表示最低3個數(shù)字,可以更多
0/d{2,3} 代表區(qū)號
例如:021
[0/+]/d{2,3} 代表國際區(qū)號
如果使用減號連接,完整的應該是
/^(([0/+]/d{2,3}-)?(0/d{2,3})-)?(/d{7,8})(-(/d{3,}))?$/

測試代碼: 

  1.   
  2. <SCRIPT LANGUAGE="JavaScript">  
  3. function testit(){  
  4. var filter=/^(([0/+]/d{2,3}-)?(0/d{2,3})-)?(/d{7,8})(-(/d{3,}))?$/;  
  5. alert(filter.test(txt.value));  
  6. }  
  7. </SCRIPT>  
  8. <input id=txt onchange="testit()">  

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 六枝特区| 新兴县| 嘉兴市| 德庆县| 龙里县| 临海市| 祁阳县| 青田县| 桂东县| 南溪县| 泌阳县| 延长县| 石家庄市| 新宁县| 金坛市| 灵武市| 格尔木市| 乐亭县| 桦川县| 石棉县| 赫章县| 波密县| 宁武县| 白河县| 平果县| 定远县| 岳池县| 宜兰县| 常山县| 宣化县| 淮滨县| 紫金县| 双峰县| 阳江市| 德安县| 寿宁县| 元阳县| 巨鹿县| 桓台县| 防城港市| 苏尼特右旗|