Skip to content

Commit 59cb809

Browse files
committed
Merge branch 'dev' into python3
Conflicts: python/phonenumbers/data/region_AR.py
2 parents d806dc0 + 19b267f commit 59cb809

3 files changed

Lines changed: 12 additions & 2 deletions

File tree

python/phonenumbers/data/region_AR.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
voicemail=PhoneNumberDesc(national_number_pattern='NA', possible_number_pattern='NA'),
1717
no_international_dialling=PhoneNumberDesc(national_number_pattern='810\\d{7}', possible_number_pattern='\\d{10}', example_number='8101234567'),
1818
national_prefix='0',
19-
national_prefix_for_parsing=' 0?(?: (11| 2(?: 2(?: 02?| [13]| 2[13-79]| 4[1-6]| 5[2457]| 6[124-8]| 7[1-4]| 8[13-6]| 9[1267] )| 3(?: 02?| 1[467]| 2[03-6]| 3[13-8]| [49][2-6]| 5[2-8]| [67] )| 4(?: 7[3-578]| 9 )| 6(?: [0136]| 2[24-6]| 4[6-8]?| 5[15-8] )| 80| 9(?: 0[1-3]| [19]| 2\\d| 3[1-6]| 4[02568]?| 5[2-4]| 6[2-46]| 72?| 8[23]? ) )| 3(?: 3(?: 2[79]| 6| 8[2578] )| 4(?: 0[124-9]| [12]| 3[5-8]?| 4[24-7]| 5[4-68]?| 6[02-9]| 7[126]| 8[2379]?| 9[1-36-8] )| 5(?: 1| 2[1245]| 3[237]?| 4[1-46-9]| 6[2-4]| 7[1-6]| 8[2-5]? )| 6[24]| 7(?: 1[1568]| 2[15]| 3[145]| 4[13]| 5[14-8]| [069]| 7[2-57]| 8[126] )| 8(?: [01]| 2[15-7]| 3[2578]?| 4[13-6]| 5[4-8]?| 6[1-357-9]| 7[36-8]?| 8[5-8]?| 9[124] ) ) )15 )?',
19+
national_prefix_for_parsing='0?(?:(11|2(?:2(?:02?|[13]|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:02?|1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[67])|4(?:7[3-578]|9)|6(?:[0136]|2[24-6]|4[6-8]?|5[15-8])|80|9(?:0[1-3]|[19]|2\\d|3[1-6]|4[02568]?|5[2-4]|6[2-46]|72?|8[23]?))|3(?:3(?:2[79]|6|8[2578])|4(?:0[124-9]|[12]|3[5-8]?|4[24-7]|5[4-68]?|6[02-9]|7[126]|8[2379]?|9[1-36-8])|5(?:1|2[1245]|3[237]?|4[1-46-9]|6[2-4]|7[1-6]|8[2-5]?)|6[24]|7(?:1[1568]|2[15]|3[145]|4[13]|5[14-8]|[069]|7[2-57]|8[126])|8(?:[01]|2[15-7]|3[2578]?|4[13-6]|5[4-8]?|6[1-357-9]|7[36-8]?|8[5-8]?|9[124])))15)?',
2020
national_prefix_transform_rule='9\\1',
2121
number_format=[NumberFormat(pattern='([68]\\d{2})(\\d{3})(\\d{4})', format='\\1-\\2-\\3', leading_digits_pattern=['[68]'], national_prefix_formatting_rule='0\\1'),
2222
NumberFormat(pattern='(9)(11)(\\d{4})(\\d{4})', format='\\2 15-\\3-\\4', leading_digits_pattern=['911'], national_prefix_formatting_rule='0\\1'),

python/tests/examplenumberstest.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,16 @@ def testBlankMetadata(self):
181181
number = phonenumberutil.parse("+6927654321", "US")
182182
self.assertEqual("Country Code: 692 National Number: 7654321 Leading Zero: False", str(number))
183183

184+
def testWhitespaceInNationalPrefixForParsing(self):
185+
# Python version extra test
186+
# AR metadata has whitespace in the RE for nationalPrefixForParsing
187+
number = phonenumberutil.parse("+540348215617137", "AR")
188+
self.assertTrue(phonenumberutil.is_valid_number(number))
189+
self.assertEqual(PhoneNumberType.MOBILE, phonenumberutil.number_type(number))
190+
number = phonenumberutil.parse("0344615614207", "AR")
191+
self.assertTrue(phonenumberutil.is_valid_number(number))
192+
self.assertEqual(PhoneNumberType.MOBILE, phonenumberutil.number_type(number))
193+
184194
def testFormatNumberForMobile(self):
185195
# Python version extra test. Special cases for CO and BR in
186196
# format_number_for_mobile_dialing(), included here so that real metadata is used

tools/python/buildmetadatafromxml.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,7 @@ def __init__(self, xterritory, short_data):
346346
self.o.leading_digits = xterritory.get('leadingDigits', None)
347347
self.o.preferred_international_prefix = xterritory.get('preferredInternationalPrefix', None)
348348
self.o.national_prefix = xterritory.get('nationalPrefix', None)
349-
self.o.national_prefix_for_parsing = xterritory.get('nationalPrefixForParsing', None)
349+
self.o.national_prefix_for_parsing = _dews_re(xterritory.get('nationalPrefixForParsing', None))
350350
self.o.national_prefix_transform_rule = xterritory.get('nationalPrefixTransformRule', None)
351351
if self.o.national_prefix_transform_rule is not None:
352352
# Replace '$1' etc with '\1' to match Python regexp group reference format

0 commit comments

Comments
 (0)