GithubHelp home page GithubHelp logo

hattoriheiji / chinamobilephonenumberregex Goto Github PK

View Code? Open in Web Editor NEW

This project forked from vincentsit/chinamobilephonenumberregex

0.0 1.0 0.0 51 KB

Regular expressions that match the mobile phone number in mainland China. / 一组匹配**大陆手机号码的正则表达式。

License: MIT License

chinamobilephonenumberregex's Introduction

ChinaMobilePhoneNumberRegex

A set of regular expressions to match the mobile phone number in mainland China.

Regular Expressions

Match all numbers (Phone number + IoT number + Data only number)

^(?:\+?86)?1(?:3\d{3}|5[^4\D]\d{2}|8\d{3}|7(?:[01356789]\d{2}|4(?:0\d|1[0-2]|9\d))|9[189]\d{2}|6[567]\d{2}|4(?:[14]0\d{3}|[68]\d{4}|[579]\d{2}))\d{6}$

Match all numbers with SMS (Phone number + Data only number)

^(?:\+?86)?1(?:3\d{3}|5[^4\D]\d{2}|8\d{3}|7(?:[01356789]\d{2}|4(?:0\d|1[0-2]|9\d))|9[189]\d{2}|6[567]\d{2}|4[579]\d{2})\d{6}$

Mobile phone number

Match all

^(?:\+?86)?1(?:3\d{3}|5[^4\D]\d{2}|8\d{3}|7(?:[35678]\d{2}|4(?:0\d|1[0-2]|9\d))|9[189]\d{2}|66\d{2})\d{6}$

Match China Mobile

^(?:\+?86)?1(?:3(?:4[^9\D]|[5-9]\d)|5[^3-6\D]\d|8[23478]\d|(?:78|98)\d)\d{7}$

Match China Unicom

^(?:\+?86)?1(?:3[0-2]|[578][56]|66)\d{8}$

Match China Telecom

^(?:\+?86)?1(?:3(?:3\d|49)\d|53\d{2}|8[019]\d{2}|7(?:[37]\d{2}|40[0-5])|9[19]\d{2})\d{6}$

Match Inmarsat (Satellite Communications)

^(?:\+?86)?1749\d{7}$

Match Emergency Communication Support Center of MIIT (Emergency communications)

^(?:\+?86)?174(?:0[6-9]|1[0-2])\d{6}$

MVNO number

Match all

^(?:\+?86)?1(?:7[01]|6[57])\d{8}$

Match China Mobile

^(?:\+?86)?1(?:65\d|70[356])\d{7}$

Match China Unicom

^(?:\+?86)?1(?:70[4789]|71\d|67\d)\d{7}$

Match China Telecom

^(?:\+?86)?170[0-2]\d{7}$

IoT number

Match all

^(?:\+?86)?14(?:[14]0\d|[68]\d{2})\d{8}$

Match China Mobile

^(?:\+?86)?14(?:40|8\d)\d{9}$

Match China Unicom

^(?:\+?86)?146\d{10}$

Match China Telecom

^(?:\+?86)?1410\d{9}$

Data only number

Match all

^(?:\+?86)?14[579]\d{8}$

Match China Mobile

^(?:\+?86)?147\d{8}$

Match China Unicom

^(?:\+?86)?145\d{8}$

Match China Telecom

^(?:\+?86)?149\d{8}$

Test/Debug Online

https://regex101.com
https://regexr.com
https://www.debuggex.com (PCRE visualizer)

Rules

Carrier

  • Voice calls / SMS / Data traffic
  • 11 digits
Carrier [1] Prefix
China Mobile 134-0~8 / 135 / 136 / 137 / 138 / 139 / 150 / 151 / 152 / 157 / 158 / 159 / 178 / 182 / 183 / 184 / 187 / 188 / 198
China Unicom 130 / 131 / 132 / 155 / 156 / 166 / 175 / 176 / 185 / 186
China Telecom 133 / 134-9 / 153 / 173 / 174-00~05 / 177 / 180 / 181 / 189 / 191 / 199
Inmarsat (Satellite) [2] 174-9
Emergency Communication Support Center of MIIT (Emergency communications) 174-06~12

MVNO

  • Voice calls / SMS / Data traffic
  • 11 digits
Carrier [1] Prefix
China Mobile 165 / 1703 / 1705 / 1706
China Unicom 167 / 1704 / 1707 / 1708 / 1709 / 171
China Telecom 1700 / 1701 / 1702

IoT

  • Data traffic
  • 13 digits
Carrier [1] Prefix
China Mobile 1440X / 148XX
China Unicom 146XX
China Telecom 1410X

Data-plans only

  • Voice calls (Partial) / SMS / Data traffic
  • 11 digits
Carrier [1] Prefix Voice calls [3]
China Mobile 147 Yes
China Unicom 145 No
China Telecom 149 Yes
  1. Since MNP has been piloted in some areas, for users who have changed to another carrier, the mobile phone number prefix can no longer reflect its current carrier.
  2. Operated by China Transport Telecommunication & Information Center.
  3. According to the relevant documents of the MIIT, the voice call function is allowed in 145 / 147 / 149 prefixes, carriers can decide whether to provide voice call function according to the needs of their customers. At present, the 147 / 149 prefixes that supports voice calls is available.

Reference

Telephone numbers in China - Wikipedia

Stay up to date

Since the mobile phone number regular expression is time-sensitive, when any regular expression is updated, a new version will be released to trigger GitHub's mail system to notify all users who are watching the repository. If you want to be notified when any regular expressions are updated, please watch this repository.

How to watch releases for a repository?

Release Notes

2019.01.10

  • Optimize the compatibility of some regular expressions in JavaScript.

2019.01.07

  • Add support for 165 prefix.

2018.12.30

  • Add an optional country code match.
  • Add regular expression visualization links.
  • Fix 17X prefix cannot match when matching non-174X prefix (e.g. 178).
  • Fix non-numbers in negated character classes is not excluded.
  • Optimize some regular expressions.

2018.12.29

  • Add support for 146 / 149 / 167 / 191 / 1440X / 148XX / 1410X / 174-00~05 / 174-06~12 / 174-9 prefix.

2017.08.09

  • Add support for 166 / 198 / 199 prefix.

2016.10.15

  • Add English documentation.
  • Add support for 175 prefix.
  • Remove test project.
  • Fix 1349 matching issues.

2016.04.05

  • Add the 171 prefix support.
  • Separate 14* prefix matching.
  • Improve the MVNO prefix matching.

2014.12.19

  • Initial release.

License

MIT

chinamobilephonenumberregex's People

Contributors

vincentsit avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.