A set of regular expressions to match the mobile phone number in mainland China.
The mobile number portability(MNP) service in mainland China has been officially available on December 1, 2019, China Standard Time. It is no longer accurate to detect carriers by mobile phone numbers. However, there is no alternative.
Regular Expressions (PCRE)
If you need POSIX standard regular expressions, Click here.
^(?:\+?86)?1(?:3(?:4[^9\D]|[5-9]\d)|5[^3-6\D]\d|7[28]\d|8[23478]\d|9[578]\d)\d{7}$
^(?:\+?86)?1(?:3[0-2]|[578][56]|66|96)\d{8}$
^(?:\+?86)?1(?:3(?:3\d|49)\d|53\d{2}|8[019]\d{2}|7(?:[37]\d{2}|40[0-5])|9[0139]\d{2})\d{6}$
Match Emergency Communication Support Center of MIIT (Emergency communications)
^(?:\+?86)?174(?:0[6-9]|1[0-2])\d{6}$
^(?:\+?86)?1(?:7[01]|6[257])\d{8}$
^(?:\+?86)?1(?:65\d|70[356])\d{7}$
^(?:\+?86)?1(?:70[4789]|71\d|67\d)\d{7}$
^(?:\+?86)?1(?:70[012]|62\d)\d{7}$
^(?:\+?86)?14(?:[14]0|41|[68]\d)\d{9}$
^(?:\+?86)?14(?:4[01]|8\d)\d{9}$
https://regex101.com
https://regexr.com
https://www.debuggex.com (PCRE visualizer)
- 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 / 172 / 178 / 182 / 183 / 184 / 187 / 188 / 195 / 197 / 198 |
China Unicom | 130 / 131 / 132 / 155 / 156 / 166 / 175 / 176 / 185 / 186 / 196 |
China Telecom | 133 / 134-9 / 153 / 173 / 174-00~05 / 177 / 180 / 181 / 189 / 190 / 191 / 193 / 199 |
China Broadcast Network | 192 |
Inmarsat (Satellite) [2] | 174-9 |
Emergency Communication Support Center of MIIT (Emergency communications) | 174-06~12 |
- 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 | 162 / 1700 / 1701 / 1702 |
- Data traffic
- 13 digits
Carrier [1] | Prefix |
---|---|
China Mobile | 1440X / 1441X / 148XX |
China Unicom | 146XX |
China Telecom | 1410X |
- 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 |
- 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.
- Operated by China Transport Telecommunication & Information Center.
- 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 support voice calls is available.
Telephone numbers in China - Wikipedia
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?
- Add support for 1441 prefix.
- Add support for 192 prefix.
- Add support for 172 prefix.
- Add support for 190 / 196 / 197 prefix.
- Add support for 162 / 193 / 195 prefix.
- Add reminder for mobile number portability service.
- Optimize the compatibility of some regular expressions in JavaScript.
- Add support for 165 prefix.
- 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.
- Add support for 146 / 149 / 167 / 191 / 1440X / 148XX / 1410X / 174-00~05 / 174-06~12 / 174-9 prefix.
- Add support for 166 / 198 / 199 prefix.
- Add English documentation.
- Add support for 175 prefix.
- Remove test project.
- Fix 1349 matching issues.
- Add the 171 prefix support.
- Separate 14* prefix matching.
- Improve the MVNO prefix matching.
- Initial release.
MIT