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

首頁 > 編程 > regex > 正文

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

2020-01-20 22:02:42
字體:
來源:轉載
供稿:網友

只允許輸入數字

<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}$");    }

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁陵县| 河南省| 博客| 龙川县| 焦作市| 许昌县| 上林县| 宣汉县| 临泉县| 德保县| 马鞍山市| 鹰潭市| 绥宁县| 房产| 长葛市| 五台县| 汽车| 石渠县| 观塘区| 蕲春县| 深泽县| 黄陵县| 永兴县| 随州市| 黎平县| 扶余县| 深水埗区| 惠州市| 南皮县| 大悟县| 长寿区| 南开区| 临江市| 光山县| 遂川县| 宿松县| 赤峰市| 增城市| 定襄县| 高青县| 鄄城县|