正則表達式,又稱正規表示法、常規表示法,正則表達式使用單個字符串來描述、匹配一系列符合某個句法規則的字符串。
很多程序員都需要用到正則表達式,它可以幫助開發者很好的判斷一個字符串是否合法:
- 比如判斷一個手機號的格式是否正確
- 手機號碼的匹配
- 填寫的郵箱格式是否正確
但是呢,國內手機號的匹配還是有點難度,不僅有三大運營商,這三大運營商還經常推出一些新號段,因此判斷手機格式還是有點復雜的
今天猿妹和大家分享一組超級全面的匹配大陸手機號的正則表達式——ChinaMobilePhoneNumberRegex
到底有多全面呢?往下看你就知道了,比如:
匹配所有號碼(手機卡 + 數據卡 + 上網卡)
復制代碼 代碼如下:
^(?:+?86)?1(?:3d{3}|5[^4D]d{2}|8d{3}|7(?:[01356789]d{2}|4(?:0d|1[0-2]|9d))|9[189]d{2}|6[567]d{2}|4(?:[14]0d{3}|[68]d{4}|[579]d{2}))d{6}$
匹配所有支持短信功能的號碼(手機卡 + 上網卡)
復制代碼 代碼如下:
^(?:+?86)?1(?:3d{3}|5[^4D]d{2}|8d{3}|7(?:[01356789]d{2}|4(?:0d|1[0-2]|9d))|9[189]d{2}|6[567]d{2}|4[579]d{2})d{6}$
手機卡
匹配所有
復制代碼 代碼如下:
^(?:+?86)?1(?:3d{3}|5[^4D]d{2}|8d{3}|7(?:[35678]d{2}|4(?:0d|1[0-2]|9d))|9[189]d{2}|66d{2})d{6}$
匹配中國移動
復制代碼 代碼如下:
^(?:+?86)?1(?:3(?:4[^9D]|[5-9]d)|5[^3-6D]d|8[23478]d|(?:78|98)d)d{7}$
匹配中國聯通
復制代碼 代碼如下:
^(?:+?86)?1(?:3[0-2]|[578][56]|66)d{8}$
匹配中國電信
復制代碼 代碼如下:
^(?:+?86)?1(?:3(?:3d|49)d|53d{2}|8[019]d{2}|7(?:[37]d{2}|40[0-5])|9[19]d{2})d{6}$
匹配北京船舶通信導航有限公司(海事衛星通信)
復制代碼 代碼如下:
^(?:+?86)?1749d{7}$
工業和信息化部應急通信保障中心(應急通信)
復制代碼 代碼如下:
^(?:+?86)?174(?:0[6-9]|1[0-2])d{6}$
虛擬運營商
匹配所有
復制代碼 代碼如下:
^(?:+?86)?1(?:7[01]|6[57])d{8}$
匹配中國移動
復制代碼 代碼如下:
^(?:+?86)?1(?:65d|70[356])d{7}$
匹配中國聯通
復制代碼 代碼如下:
^(?:+?86)?1(?:70[4789]|71d|67d)d{7}$
匹配中國電信
復制代碼 代碼如下:
^(?:+?86)?170[0-2]d{7}$
物聯網數據卡
匹配所有
復制代碼 代碼如下:
^(?:+?86)?14(?:[14]0|[68]d)d{9}$
匹配中國移動
復制代碼 代碼如下:
^(?:+?86)?14(?:40|8d)d{9}$
匹配中國聯通
復制代碼 代碼如下:
^(?:+?86)?146d{10}$
匹配中國電信
復制代碼 代碼如下:
^(?:+?86)?1410d{9}$
上網卡
匹配所有
復制代碼 代碼如下:
^(?:+?86)?14[579]d{8}$
匹配中國移動
復制代碼 代碼如下:
^(?:+?86)?147d{8}$
匹配中國聯通
復制代碼 代碼如下:
^(?:+?86)?145d{8}$
匹配中國電信
復制代碼 代碼如下:
^(?:+?86)?149d{8}$
里面還包含了各種規則介紹。

目前,該項目已經在GitHub上獲得 3340 個Star,333個Fork(GitHub地址:https://github.com/VincentSit/ChinaMobilePhoneNumberRegex)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- 最新手機號碼、電話號碼正則表達式
- 實用的JS正則表達式(手機號碼/IP正則/郵編正則/電話等)
- 匹配移動/聯通/電信手機號碼正則表達式小結
- 正則表達式驗證用戶名、密碼、手機號碼、身份證(推薦)
- js驗證電話號碼手機號碼的正則表達式
- 使用正則表達式判斷是否為手機號碼(簡單且實用)
- 2019手機號碼JS正則表達式驗證實例代碼