|
2 | 2 | from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata |
3 | 3 |
|
4 | 4 | PHONE_METADATA_CN = PhoneMetadata(id='CN', country_code=86, international_prefix='(1[1279]\\d{3})?00', |
5 | | - general_desc=PhoneNumberDesc(national_number_pattern='[1-79]\\d{7,11}|8[0-357-9]\\d{6,9}', possible_number_pattern='\\d{4,12}'), |
| 5 | + general_desc=PhoneNumberDesc(national_number_pattern='[1-7]\\d{7,11}|8[0-357-9]\\d{6,9}|9(?:5\\d{3}|\\d{9})', possible_number_pattern='\\d{4,12}'), |
6 | 6 | fixed_line=PhoneNumberDesc(national_number_pattern='21\\d{8,10}|(?:10|2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:31|5[457]|6[09]|91)|898)\\d{8}|(?:3(?:1[02-9]|35|49|5\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[3-9]|5[2-9]|6[4789]|7\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[3678]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))\\d{7}|80(?:29|6[03578]|7[018]|81)\\d{4}', possible_number_pattern='\\d{4,12}', example_number='1012345678'), |
7 | 7 | mobile=PhoneNumberDesc(national_number_pattern='1(?:3\\d|4[57]|[58][0-35-9])\\d{8}', possible_number_pattern='\\d{11}', example_number='13123456789'), |
8 | 8 | toll_free=PhoneNumberDesc(national_number_pattern='(?:10)?800\\d{7}', possible_number_pattern='\\d{10,12}', example_number='8001234567'), |
9 | 9 | premium_rate=PhoneNumberDesc(national_number_pattern='16[08]\\d{5}', possible_number_pattern='\\d{8}', example_number='16812345'), |
10 | | - shared_cost=PhoneNumberDesc(national_number_pattern='400\\d{7}', possible_number_pattern='\\d{10}', example_number='4001234567'), |
| 10 | + shared_cost=PhoneNumberDesc(national_number_pattern='400\\d{7}|95\\d{3}', possible_number_pattern='\\d{5}(?:\\d{5})?', example_number='4001234567'), |
11 | 11 | personal_number=PhoneNumberDesc(national_number_pattern='NA', possible_number_pattern='NA'), |
12 | 12 | voip=PhoneNumberDesc(national_number_pattern='NA', possible_number_pattern='NA'), |
13 | 13 | pager=PhoneNumberDesc(national_number_pattern='NA', possible_number_pattern='NA'), |
14 | 14 | uan=PhoneNumberDesc(national_number_pattern='NA', possible_number_pattern='NA'), |
15 | 15 | emergency=PhoneNumberDesc(national_number_pattern='1(?:1[09]|20)', possible_number_pattern='\\d{3}', example_number='119'), |
16 | 16 | voicemail=PhoneNumberDesc(national_number_pattern='NA', possible_number_pattern='NA'), |
17 | | - no_international_dialling=PhoneNumberDesc(national_number_pattern='(?:4|(?:10)?8)00\\d{7}', possible_number_pattern='\\d{10,12}', example_number='4001234567'), |
| 17 | + no_international_dialling=PhoneNumberDesc(national_number_pattern='(?:4|(?:10)?8)00\\d{7}|95\\d{3}', possible_number_pattern='\\d{5,12}', example_number='4001234567'), |
18 | 18 | preferred_international_prefix='00', |
19 | 19 | national_prefix='0', |
20 | 20 | national_prefix_for_parsing='(1[1279]\\d{3})|0', |
21 | 21 | number_format=[NumberFormat(pattern='(80\\d{2})(\\d{4})', format=u'\\1 \\2', leading_digits_pattern=['80[2678]'], national_prefix_formatting_rule=u'0\\1', national_prefix_optional_when_formatting=True, domestic_carrier_code_formatting_rule=u'$CC \\1'), |
22 | 22 | NumberFormat(pattern='([48]00)(\\d{3})(\\d{4})', format=u'\\1 \\2 \\3', leading_digits_pattern=['[48]00']), |
| 23 | + NumberFormat(pattern='(\\d{5})', format=u'\\1', leading_digits_pattern=['95']), |
23 | 24 | NumberFormat(pattern='(\\d{3,4})(\\d{4})', format=u'\\1 \\2', leading_digits_pattern=['[2-9]']), |
24 | 25 | NumberFormat(pattern='(21)(\\d{4})(\\d{4,6})', format=u'\\1 \\2 \\3', leading_digits_pattern=['21'], national_prefix_formatting_rule=u'0\\1', national_prefix_optional_when_formatting=True, domestic_carrier_code_formatting_rule=u'$CC \\1'), |
25 | 26 | NumberFormat(pattern='([12]\\d)(\\d{4})(\\d{4})', format=u'\\1 \\2 \\3', leading_digits_pattern=['10[1-9]|2[02-9]', '10[1-9]|2[02-9]', '10(?:[1-79]|8(?:[1-9]|0[1-9]))|2[02-9]'], national_prefix_formatting_rule=u'0\\1', national_prefix_optional_when_formatting=True, domestic_carrier_code_formatting_rule=u'$CC \\1'), |
|
29 | 30 | NumberFormat(pattern='(10800)(\\d{3})(\\d{4})', format=u'\\1 \\2 \\3', leading_digits_pattern=['108', '1080', '10800'])], |
30 | 31 | intl_number_format=[NumberFormat(pattern='(80\\d{2})(\\d{4})', format=u'\\1 \\2', leading_digits_pattern=['80[2678]']), |
31 | 32 | NumberFormat(pattern='([48]00)(\\d{3})(\\d{4})', format=u'\\1 \\2 \\3', leading_digits_pattern=['[48]00']), |
| 33 | + NumberFormat(pattern='(\\d{5})', format=u'\\1', leading_digits_pattern=['95']), |
32 | 34 | NumberFormat(pattern='(21)(\\d{4})(\\d{4,6})', format=u'\\1 \\2 \\3', leading_digits_pattern=['21']), |
33 | 35 | NumberFormat(pattern='([12]\\d)(\\d{4})(\\d{4})', format=u'\\1 \\2 \\3', leading_digits_pattern=['10[1-9]|2[02-9]', '10[1-9]|2[02-9]', '10(?:[1-79]|8(?:[1-9]|0[1-9]))|2[02-9]']), |
34 | 36 | NumberFormat(pattern='(\\d{3})(\\d{4})(\\d{4})', format=u'\\1 \\2 \\3', leading_digits_pattern=['3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1|2[37]|3[12]|51|7[13-79]|9[15])|7(?:31|5[457]|6[09]|91)|898']), |
|
0 commit comments