Skip to content

Commit fa0e370

Browse files
committed
Merge branch 'dev' into python3
Conflicts: python/phonenumbers/data/alt_format_49.py python/phonenumbers/data/region_BG.py python/phonenumbers/data/region_CD.py python/phonenumbers/data/region_DE.py python/phonenumbers/data/region_IN.py python/phonenumbers/data/region_MY.py python/phonenumbers/data/region_PT.py
2 parents c4f7812 + 3ed72b7 commit fa0e370

38 files changed

Lines changed: 239 additions & 148 deletions

README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -156,3 +156,18 @@ Project Layout
156156
changes to the master metadata need to be incorporated.
157157
* The `tools/` directory holds the tools that are used to process upstream
158158
changes to the master metadata.
159+
160+
Python 3.x Support
161+
------------------
162+
163+
There are currently two ways to get a Python 3 version of the library.
164+
165+
* Check out the main branch, and run `make python3` from the `tools/python` directory. This will produce a new
166+
top-level `python3/` directory containing the Python 3 version of the library, as produced by
167+
[2to3](http://docs.python.org/2/library/2to3.html).
168+
* Check out the (somewhat experimental) `python3` branch, which holds a unified version of the library that runs
169+
under both Python 2.x (x >= 5) and Python 3.x.
170+
171+
At some point the `python3` branch will probably become the main branch, but at the moment it sometimes lags behind the
172+
main branch. Please let me know if you're using the `python3` branch in anger, so that I can know to keep it more
173+
up-to-date (and possibly accelerate the plans to make it the mainline version).

python/HISTORY

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,12 @@
11

2+
=====================
3+
What's new in 5.6b1
4+
=====================
5+
6+
Merge up to upstream Subversion revision 579.
7+
8+
9+
210
=====================
311
What's new in 5.5b1
412
=====================

python/phonenumbers/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ def description_for_valid_number(*args, **kwargs):
224224

225225
# Version number is taken from the upstream libphonenumber version
226226
# together with an indication of the version of the Python-specific code.
227-
__version__ = "5.5b1"
227+
__version__ = "5.6b1"
228228

229229
__all__ = ['PhoneNumber', 'CountryCodeSource', 'FrozenPhoneNumber',
230230
'REGION_CODE_FOR_NON_GEO_ENTITY', 'NumberFormat', 'PhoneNumberDesc', 'PhoneMetadata',

python/phonenumbers/data/__init__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,14 @@ def _load_region(code):
2828
for region_code in _AVAILABLE_REGION_CODES:
2929
PhoneMetadata.register_region_loader(region_code, _load_region)
3030

31+
from .alt_format_351 import PHONE_ALT_FORMAT_351
3132
from .alt_format_43 import PHONE_ALT_FORMAT_43
3233
from .alt_format_44 import PHONE_ALT_FORMAT_44
3334
from .alt_format_49 import PHONE_ALT_FORMAT_49
3435
from .alt_format_55 import PHONE_ALT_FORMAT_55
3536
from .alt_format_61 import PHONE_ALT_FORMAT_61
3637
from .alt_format_81 import PHONE_ALT_FORMAT_81
37-
_ALT_NUMBER_FORMATS = {43: PHONE_ALT_FORMAT_43, 44: PHONE_ALT_FORMAT_44, 49: PHONE_ALT_FORMAT_49, 55: PHONE_ALT_FORMAT_55, 61: PHONE_ALT_FORMAT_61, 81: PHONE_ALT_FORMAT_81}
38+
_ALT_NUMBER_FORMATS = {351: PHONE_ALT_FORMAT_351, 43: PHONE_ALT_FORMAT_43, 44: PHONE_ALT_FORMAT_44, 49: PHONE_ALT_FORMAT_49, 55: PHONE_ALT_FORMAT_55, 61: PHONE_ALT_FORMAT_61, 81: PHONE_ALT_FORMAT_81}
3839

3940
# A mapping from a country code to the region codes which
4041
# denote the country/region represented by that country code.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
"""Auto-generated file, do not edit by hand. 351 metadata"""
2+
from ..phonemetadata import NumberFormat
3+
4+
PHONE_ALT_FORMAT_351 = [NumberFormat(pattern='(2\\d{2})(\\d{3})(\\d{3})', format='\\1 \\2 \\3', leading_digits_pattern=['2[12]']), NumberFormat(pattern='(9\\d)(\\d{3})(\\d{4})', format='\\1 \\2 \\3', leading_digits_pattern=['9']), NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{2})(\\d{2})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['2[12]|9'])]
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
"""Auto-generated file, do not edit by hand. 49 metadata"""
22
from ..phonemetadata import NumberFormat
33

4-
PHONE_ALT_FORMAT_49 = [NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})', format='\\1/\\2 \\3 \\4 \\5', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{2})(\\d{4})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{2})(\\d{2})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3})(\\d{2,3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{2,4})', format='\\1/\\2 \\3', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{3})(\\d{4})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{2})(\\d{2})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{2})(\\d{2})(\\d)', format='\\1/\\2 \\3 \\4 \\5', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{3})(\\d{2,3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{4})(\\d{1,4})', format='\\1/\\2 \\3', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{3})(\\d{3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{2})(\\d{3})(\\d{2})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{2})(\\d{2})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{2})(\\d{2})(\\d{2,3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{5})(\\d{3})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['3']), NumberFormat(pattern='(\\d{5})(\\d{4})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['3']), NumberFormat(pattern='(\\d{5})(\\d{3})(\\d{3})(\\d{3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['3']), NumberFormat(pattern='(1\\d{3})(\\d{2})(\\d{3})(\\d{2})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['15']), NumberFormat(pattern='(1\\d{3})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', leading_digits_pattern=['15']), NumberFormat(pattern='(1\\d{3})(\\d{4})(\\d{3})', format='\\1 \\2 \\3', leading_digits_pattern=['15']), NumberFormat(pattern='(1\\d{2})(\\d{8})', format='\\1 \\2', leading_digits_pattern=['15']), NumberFormat(pattern='([18]\\d{2})(\\d{2,3})(\\d{3})(\\d{2})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['1[5-7]|800']), NumberFormat(pattern='(\\d{3})(\\d)(\\d{3})(\\d{3,4})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['180|900[1359]']), NumberFormat(pattern='(\\d{3})(\\d)(\\d{4})(\\d{3,4})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['180|900[1359]']), NumberFormat(pattern='(\\d{4})(\\d{4,10})', format='\\1 \\2', leading_digits_pattern=['180|900[1359]']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{4})(\\d{2})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['900[1359]'])]
4+
PHONE_ALT_FORMAT_49 = [NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})', format='\\1/\\2 \\3 \\4 \\5', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{2})(\\d{4})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{2})(\\d{2})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3})(\\d{2,3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['3[02]|40|[68]9']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{2,4})', format='\\1/\\2 \\3', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{3})(\\d{4})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{2})(\\d{2})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{2})(\\d{2})(\\d)', format='\\1/\\2 \\3 \\4 \\5', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{3})(\\d{2,3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)']), NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{4})(\\d{1,4})', format='\\1/\\2 \\3', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{3})(\\d{3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{2})(\\d{3})(\\d{2})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{2})(\\d{2})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{4})(\\d{2})(\\d{2})(\\d{2,3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))']), NumberFormat(pattern='(\\d{5})(\\d{3})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['3']), NumberFormat(pattern='(\\d{5})(\\d{4})(\\d{3,4})', format='\\1/\\2 \\3', leading_digits_pattern=['3']), NumberFormat(pattern='(\\d{5})(\\d{3})(\\d{3})(\\d{3})', format='\\1/\\2 \\3 \\4', leading_digits_pattern=['3']), NumberFormat(pattern='(1\\d{3})(\\d{2})(\\d{3})(\\d{2})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['15']), NumberFormat(pattern='(1\\d{3})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', leading_digits_pattern=['15']), NumberFormat(pattern='(1\\d{3})(\\d{4})(\\d{3})', format='\\1 \\2 \\3', leading_digits_pattern=['15']), NumberFormat(pattern='(1\\d{2})(\\d{8})', format='\\1 \\2', leading_digits_pattern=['15']), NumberFormat(pattern='([18]\\d{2})(\\d{2,3})(\\d{3})(\\d{2})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['1[5-7]|800']), NumberFormat(pattern='(8\\d{2})(\\d{6})(\\d{2})(\\d{1,4})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['800']), NumberFormat(pattern='(\\d{3})(\\d)(\\d{3})(\\d{3,4})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['180|900[1359]']), NumberFormat(pattern='(\\d{3})(\\d)(\\d{4})(\\d{3,4})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['180|900[1359]']), NumberFormat(pattern='(\\d{4})(\\d{4,10})', format='\\1 \\2', leading_digits_pattern=['180|900[1359]']), NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{4})(\\d{2})', format='\\1 \\2 \\3 \\4', leading_digits_pattern=['900[1359]'])]

python/phonenumbers/data/region_AS.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
PHONE_METADATA_AS = PhoneMetadata(id='AS', country_code=1, international_prefix='011',
55
general_desc=PhoneNumberDesc(national_number_pattern='[5689]\\d{9}', possible_number_pattern='\\d{7}(?:\\d{3})?'),
66
fixed_line=PhoneNumberDesc(national_number_pattern='6846(?:22|33|44|55|77|88|9[19])\\d{4}', possible_number_pattern='\\d{7}(?:\\d{3})?', example_number='6846221234'),
7-
mobile=PhoneNumberDesc(national_number_pattern='684(?:733|258)\\d{4}', possible_number_pattern='\\d{10}', example_number='6847331234'),
7+
mobile=PhoneNumberDesc(national_number_pattern='684(?:733|25[2468])\\d{4}', possible_number_pattern='\\d{10}', example_number='6847331234'),
88
toll_free=PhoneNumberDesc(national_number_pattern='8(?:00|55|66|77|88)[2-9]\\d{6}', possible_number_pattern='\\d{10}', example_number='8002123456'),
99
premium_rate=PhoneNumberDesc(national_number_pattern='900[2-9]\\d{6}', possible_number_pattern='\\d{10}', example_number='9002123456'),
1010
shared_cost=PhoneNumberDesc(national_number_pattern='NA', possible_number_pattern='NA'),

python/phonenumbers/data/region_BG.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,5 @@
2222
NumberFormat(pattern='(\\d{3})(\\d{4})', format='\\1 \\2', leading_digits_pattern=['43[124-7]|70[1-9]'], national_prefix_formatting_rule='0\\1'),
2323
NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{2})', format='\\1 \\2 \\3', leading_digits_pattern=['43[124-7]|70[1-9]'], national_prefix_formatting_rule='0\\1'),
2424
NumberFormat(pattern='(\\d{3})(\\d{2})(\\d{3})', format='\\1 \\2 \\3', leading_digits_pattern=['[78]00'], national_prefix_formatting_rule='0\\1'),
25-
NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{2,3})', format='\\1 \\2 \\3', leading_digits_pattern=['[356]|7[1-9]|8[1-6]|9[1-7]'], national_prefix_formatting_rule='0\\1'),
25+
NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{2,3})', format='\\1 \\2 \\3', leading_digits_pattern=['[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]'], national_prefix_formatting_rule='0\\1'),
2626
NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3,4})', format='\\1 \\2 \\3', leading_digits_pattern=['48|8[7-9]|9[08]'], national_prefix_formatting_rule='0\\1')])

python/phonenumbers/data/region_BH.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
PHONE_METADATA_BH = PhoneMetadata(id='BH', country_code=973, international_prefix='00',
55
general_desc=PhoneNumberDesc(national_number_pattern='[136-9]\\d{7}', possible_number_pattern='\\d{8}'),
66
fixed_line=PhoneNumberDesc(national_number_pattern='(?:1(?:3[3-6]|6[0156]|7\\d)\\d|6(?:1[16]\\d|6(?:0\\d|3[12]|44)|9(?:69|9[6-9]))|77\\d{2})\\d{4}', possible_number_pattern='\\d{8}', example_number='17001234'),
7-
mobile=PhoneNumberDesc(national_number_pattern='(?:3(?:[23469]\\d|5[35]|77|8[348])\\d|6(?:1[16]\\d|3(?:00|33|6[16])|6(?:[069]\\d|3[03-9]|44)|9(?:69|9[6-9]))|77\\d{2})\\d{4}', possible_number_pattern='\\d{8}', example_number='36001234'),
7+
mobile=PhoneNumberDesc(national_number_pattern='(?:3(?:[23469]\\d|5[035]|77|8[348])\\d|6(?:1[16]\\d|3(?:00|33|6[16])|6(?:[069]\\d|3[03-9]|44)|9(?:69|9[6-9]))|77\\d{2})\\d{4}', possible_number_pattern='\\d{8}', example_number='36001234'),
88
toll_free=PhoneNumberDesc(national_number_pattern='80\\d{6}', possible_number_pattern='\\d{8}', example_number='80123456'),
99
premium_rate=PhoneNumberDesc(national_number_pattern='(?:87|9[014578])\\d{6}', possible_number_pattern='\\d{8}', example_number='90123456'),
1010
shared_cost=PhoneNumberDesc(national_number_pattern='84\\d{6}', possible_number_pattern='\\d{8}', example_number='84123456'),

python/phonenumbers/data/region_BJ.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
PHONE_METADATA_BJ = PhoneMetadata(id='BJ', country_code=229, international_prefix='00',
55
general_desc=PhoneNumberDesc(national_number_pattern='[2689]\\d{7}|7\\d{3}', possible_number_pattern='\\d{4,8}'),
66
fixed_line=PhoneNumberDesc(national_number_pattern='2(?:02|1[037]|2[45]|3[68])\\d{5}', possible_number_pattern='\\d{8}', example_number='20211234'),
7-
mobile=PhoneNumberDesc(national_number_pattern='(?:6[46]|9[03-8])\\d{6}', possible_number_pattern='\\d{8}', example_number='90011234'),
7+
mobile=PhoneNumberDesc(national_number_pattern='(?:6[467]|9[03-8])\\d{6}', possible_number_pattern='\\d{8}', example_number='90011234'),
88
toll_free=PhoneNumberDesc(national_number_pattern='7[3-5]\\d{2}', possible_number_pattern='\\d{4}', example_number='7312'),
99
premium_rate=PhoneNumberDesc(national_number_pattern='NA', possible_number_pattern='NA'),
1010
shared_cost=PhoneNumberDesc(national_number_pattern='NA', possible_number_pattern='NA'),

0 commit comments

Comments
 (0)