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

首頁 > 編程 > Regex > 正文

手機號碼驗證方法(正則驗證)

2020-03-16 20:55:03
字體:
來源:轉載
供稿:網友

只允許輸入數字

<xsl:attribute name="onkeyup">value=value.replace(/[^/d]/g,'')</xsl:attribute><xsl:attribute name="onbeforepaste">clipboardData.setData('text',clipboardData.getData('text').replace(/[^/d]/g,''))</xsl:attribute>
//固定電話只要有一個填寫即可$('.form-inline').submit(function(){    var m = $('input[name=mobile]').val();    var p = $('input[name=phone]').val();    var reg = /^1/d{10}$/;    if((m == "" || !reg.test(m)) && p == ""){      $('input[name=mobile]').addClass('error_color');      $('input[name=mobile]').tooltip('show');      return false;    }else{      $('input[name=mobile]').removeClass('error_color');      $('input[name=mobile]').tooltip('hide');      return true;     }  })

下面看下最新手機號碼驗證正則表達式

由于手機號段的不斷更新,以前的正則表達式已經無法滿足需求。重新編寫這條表達式,號段資料來源依據:http://www.jihaoba.com/tools/haoduan/

現有手機號段:

移動:139   138   137   136   135   134   147   150   151   152   157   158    159   178  182   183   184   187   188 
聯通:130   131   132   155   156   185   186   145   176 
電信:133   153   177   173   180   181   189

虛擬運營商:

170  171

整理后:

130~139  145,147 15[012356789] 178,176,177,173,170,171 180~189

var regex = {  mobile: /^0?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/}

js:

var bool = checkRegexp(jq("#mobile"), /^0?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/, "電話格式不對");

表達式分析:

“/”代表一個正則表達式。

“^”代表字符串的開始位置,“$”代表字符串的結束位置。

“?”代表匹配前面的字符一個或零個,所以這里0?的意思是手機號碼可以以0開頭或不以0開頭。

接下的部分驗證11位的手機號碼,先從13開始,因為從130-139都有所以可選區間是[0-9],15開頭的號碼沒有154所以[]里面沒有4這個數字,當然也可以寫成[0-35-9],下面18和14開的號碼同上。

小括號括起來的代表一個子表達式,里面是4個可選分支分別用“|”來區分開來,在正則中“|”的優先級是最低的,這里每個分支匹配的都是3個字符(一個[]只能匹配一個字符,里面是可選的意思),也就是手機號碼的前3位數字,那么后面還有8位數字需要匹配,可以是0-9的任意字符,所以是“[0-9]{8}”,{}中的數字代表匹配前面字符的個數。

分析完畢。

如果有大頭鬼在前面寫上86,17951之類的呢?

/^(0|86|17951)?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$/

C#版:

using System.Text.RegularExpressions;    public static bool IsTelephone(string str_telephone)    {      return Regex.IsMatch(str_telephone, @"^(0|86|17951)?(13[0-9]|15[012356789]|17[013678]|18[0-9]|14[57])[0-9]{8}$");    }

以上所述是小編給大家介紹的手機號碼驗證方法(正則驗證),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!


注:相關教程知識閱讀請移步到正則表達式頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宽甸| 皮山县| 筠连县| 东台市| 贵溪市| 安多县| 东乌| 万盛区| 陆丰市| 玉环县| 冀州市| 岳阳市| 贵港市| 古交市| 勃利县| 肥东县| 漠河县| 新营市| 瓮安县| 定边县| 昭苏县| 吴江市| 石嘴山市| 崇州市| 苏州市| 鲁山县| 城固县| 乌兰察布市| 冕宁县| 河东区| 禄劝| 公主岭市| 长沙市| 通州区| 伽师县| 屯昌县| 贵溪市| 太康县| 鲜城| 蒙山县| 宝坻区|