Index: third_party/libphonenumber/resources/PhoneNumberMetaDataForTesting.xml |
=================================================================== |
--- third_party/libphonenumber/resources/PhoneNumberMetaDataForTesting.xml (revision 0) |
+++ third_party/libphonenumber/resources/PhoneNumberMetaDataForTesting.xml (revision 0) |
@@ -0,0 +1,764 @@ |
+<!-- Copyright (C) 2009 Google Inc. |
+ |
+ Licensed under the Apache License, Version 2.0 (the "License"); |
+ you may not use this file except in compliance with the License. |
+ You may obtain a copy of the License at |
+ |
+ http://www.apache.org/licenses/LICENSE-2.0 |
+ |
+ Unless required by applicable law or agreed to in writing, software |
+ distributed under the License is distributed on an "AS IS" BASIS, |
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
+ See the License for the specific language governing permissions and |
+ limitations under the License. |
+ |
+ @author: Shaopeng Jia |
+ |
+ MetaData on Phone Number Plan and formatting rules. This file is used |
+ solely for the purpose of unittesting, so data in this file is not |
+ necessarily consistent with that of |
+ ../src/PhoneNumberMetaData.xml |
+--> |
+ |
+<phoneNumberMetadata> |
+ <territories> |
+ <!-- Andorra --> |
+ <territory id="AD" countryCode="376" internationalPrefix="00"> |
+ </territory> |
+ |
+ <!-- Angola --> |
+ <!-- This country has been coopted to test the case of a national prefix |
+ with a non-numeric symbol in it. --> |
+ <territory id="AO" countryCode="244" internationalPrefix="00" nationalPrefix="0~0"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{3})"> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>[29]\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>2\d(?:[26-9]\d|\d[26-9])\d{5}</nationalNumberPattern> |
+ <exampleNumber>222123456</exampleNumber> |
+ </fixedLine> |
+ <mobile> |
+ <!-- Expanded the 92 prefix possibilities to matchnumbers found online. --> |
+ <nationalNumberPattern>9[1-3]\d{7}</nationalNumberPattern> |
+ <exampleNumber>923123456</exampleNumber> |
+ </mobile> |
+ </territory> |
+ |
+ <!-- Argentina --> |
+ <territory id="AR" countryCode="54" internationalPrefix="00" |
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG" |
+ nationalPrefixForParsing="0(?:(11|343|3715)15)?" |
+ nationalPrefixTransformRule="9$1"> |
+ <!-- Note in nationalPrefixForParsing, the areacode (such as 11, 343, etc.), when present in |
+ front of carrier selection code 15, is captured to replace $1 in |
+ nationalPrefixTransformRule --> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>11</leadingDigits> |
+ <format>$1 $2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{4})(\d{2})(\d{4})"> |
+ <leadingDigits>1[02-9]|[23]</leadingDigits> |
+ <format>$1 $2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="9(11)(\d{4})(\d{4})"> |
+ <leadingDigits>911</leadingDigits> |
+ <format>$1 15 $2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="9(\d{4})(\d{2})(\d{4})" |
+ carrierCodeFormattingRule="$NP$FG $CC"> |
+ <leadingDigits>9(?:1[02-9]|[23])</leadingDigits> |
+ <format>$1 $2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>[68]</leadingDigits> |
+ <format>$1-$2-$3</format> |
+ </numberFormat> |
+ <intlNumberFormat pattern="(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>11</leadingDigits> |
+ <format>$1 $2-$3</format> |
+ </intlNumberFormat> |
+ <intlNumberFormat pattern="(\d{4})(\d{2})(\d{4})"> |
+ <leadingDigits>1[02-9]|[23]</leadingDigits> |
+ <format>$1 $2-$3</format> |
+ </intlNumberFormat> |
+ <intlNumberFormat pattern="(9)(11)(\d{4})(\d{4})"> |
+ <leadingDigits>911</leadingDigits> |
+ <format>$1 $2 $3 $4</format> |
+ </intlNumberFormat> |
+ <intlNumberFormat pattern="(9)(\d{4})(\d{2})(\d{4})"> |
+ <leadingDigits>9(?:1[02-9]|[23])</leadingDigits> |
+ <format>$1 $2 $3 $4</format> |
+ </intlNumberFormat> |
+ <intlNumberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>[68]</leadingDigits> |
+ <format>$1-$2-$3</format> |
+ </intlNumberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>[1-3689]\d{9,10}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{6,11}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>[1-3]\d{9}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{6,10}</possibleNumberPattern> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>9\d{10}|[1-3]\d{9}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10,11}</possibleNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>80\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>6(0\d|10)\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- Australia --> |
+ <territory id="AU" countryCode="61" internationalPrefix="001[12]" |
+ nationalPrefix="0" preferredInternationalPrefix="0011" |
+ nationalPrefixFormattingRule="$NP$FG"> |
+ <availableFormats> |
+ <numberFormat nationalPrefixFormattingRule="$FG" |
+ pattern="(\d{4})(\d{3})(\d{3})" > |
+ <leadingDigits>1</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{1})(\d{4})(\d{4})"> |
+ <leadingDigits>[2-478]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc > |
+ <nationalNumberPattern>[1-578]\d{4,14}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{5,15}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>[2378]\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9}</possibleNumberPattern> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>4\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9}</possibleNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>1800\d{6}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>190[0126]\d{6}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- Bahamas --> |
+ <territory id="BS" countryCode="1" internationalPrefix="011" |
+ nationalPrefix="1"> |
+ <generalDesc> |
+ <nationalNumberPattern>(242|8(00|66|77|88)|900)\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{7,10}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[3-57]|9[2-5])|4(?:2[237]|51|64|77)|502|636|702)\d{4}</nationalNumberPattern> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>242(357|359|457|557)\d{4}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>8(00|66|77|88)\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>900\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- Germany --> |
+ <territory id="DE" countryCode="49" internationalPrefix="00" |
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{3})(\d{3,8})"> |
+ <leadingDigits>2|3[3-9]|906|[4-9][1-9]1</leadingDigits> |
+ <format>$1 $2</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{2})(\d{4,9})"> |
+ <leadingDigits>[34]0|[68]9</leadingDigits> |
+ <format>$1/$2</format> |
+ </numberFormat> |
+ <!-- Extra fictional pattern for shorter numbers with the same prefixes as the following |
+ pattern, to illustrate the problem the AYTF has with real patterns that share this |
+ property. --> |
+ <numberFormat pattern="([4-9]\d)(\d{2})"> |
+ <leadingDigits>[4-9]</leadingDigits> |
+ <leadingDigits>[4-6]|[7-9](?:\d[1-9]|[1-9]\d)</leadingDigits> |
+ <format>$1 $2</format> |
+ </numberFormat> |
+ <numberFormat pattern="([4-9]\d{3})(\d{2,7})"> |
+ <leadingDigits>[4-9]</leadingDigits> |
+ <leadingDigits>[4-6]|[7-9](?:\d[1-9]|[1-9]\d)</leadingDigits> |
+ <format>$1 $2</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{1})(\d{6})"> |
+ <leadingDigits>800</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{3,4})(\d{4})"> |
+ <leadingDigits>900</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>\d{4,14}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{2,14}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>(?:[24-6]\d{2}|3[03-9]\d|[789](?:[1-9]\d|0[2-9]))\d{3,8}</nationalNumberPattern> |
+ <exampleNumber>30123456</exampleNumber> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>1(5\d{9}|7\d{8}|6[02]\d{8}|63\d{7})</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10,11}</possibleNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>800\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>900([135]\d{6}|9\d{7})</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10,11}</possibleNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- United Kingdom --> |
+ <territory id="GB" countryCode="44" internationalPrefix="00" |
+ nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>[1-59]|[78]0</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d)(\d{3})(\d{3})(\d{3})"> |
+ <leadingDigits>6</leadingDigits> |
+ <format>$1 $2 $3 $4</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{4})(\d{3})(\d{3})"> |
+ <leadingDigits>7[1-57-9]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>8[47]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>\d{10}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{6,10}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>[1-6]\d{9}</nationalNumberPattern> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>7[1-57-9]\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>80\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>9[018]\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </premiumRate> |
+ <sharedCost> |
+ <nationalNumberPattern>8(?:4[3-5]|7[0-2])\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </sharedCost> |
+ <voip> |
+ <nationalNumberPattern>56\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </voip> |
+ <personalNumber> |
+ <nationalNumberPattern>70\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </personalNumber> |
+ </territory> |
+ |
+ <!-- Italy --> |
+ <!-- http://en.wikipedia.org/wiki/%2B39 --> |
+ <territory id="IT" countryCode="39" internationalPrefix="00" leadingZeroPossible="true"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>0[26]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{4})(\d{3,4})"> |
+ <leadingDigits>0[13-57-9]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{3,4})"> |
+ <leadingDigits>3</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{3,6})"> |
+ <leadingDigits>8</leadingDigits> |
+ <format>$1 $2</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>[0389]\d{5,10}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{6,11}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>0\d{9,10}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10,11}</possibleNumberPattern> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>3\d{8,9}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9,10}</possibleNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>80(?:0\d{6}|3\d{3})</nationalNumberPattern> |
+ <possibleNumberPattern>\d{6,9}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>89(?:2\d{3}|9\d{6})</nationalNumberPattern> |
+ <possibleNumberPattern>\d{6,9}</possibleNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- Japan --> |
+ <!-- The metadata here is added to unit test AsYouTypeFormatter for JP, which requires switching |
+ patterns as digits beyond the third one are entered. As a result, only a few fake |
+ formatting rules are added. --> |
+ <territory id="JP" countryCode="81" internationalPrefix="010" |
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>[57-9]0</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{2})(\d{3})(\d{4})"> |
+ <leadingDigits>222|333</leadingDigits> |
+ <leadingDigits>(?:222|333)1</leadingDigits> |
+ <leadingDigits>(?:222|333)11</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{4})(\d)(\d{4})"> |
+ <leadingDigits>222|333</leadingDigits> |
+ <leadingDigits>2221|3332</leadingDigits> |
+ <leadingDigits>22212|3332</leadingDigits> |
+ <leadingDigits>222120|3332</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{2})(\d{4})"> |
+ <leadingDigits>[23]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <!-- The following numberFormat is added to test that the format containing the star sign is |
+ not used by the AYTF. --> |
+ <numberFormat pattern="(\d{4})"> |
+ <leadingDigits>[23]</leadingDigits> |
+ <format>*$1</format> |
+ </numberFormat> |
+ </availableFormats> |
+ </territory> |
+ |
+ <!-- Korea (Rep. of) --> |
+ <!-- http://www.itu.int/oth/T0202000072/en --> |
+ <!-- http://en.wikipedia.org/wiki/%2B82 --> |
+ <!-- http://www.kcc.go.kr/user.do?mode=view&page=P02030300&dc=K02030300&boardId=1074&boardSeq=2349 --> |
+ <!-- http://www.kcc.go.kr/user.do?mode=view&page=P02030300&dc=K02030300&boardId=1074&boardSeq=2240 --> |
+ <!-- http://www.telecentro.co.kr/sub/index.php?job=detail&ebcf_id=faq&page=1&mid=0503&eb_seq=36 --> |
+ <!-- Exceptions : |
+ internationalPrefix |
+ 0031, 0033, 0071, 0073 - Special services of KT and DACOM, ignorable |
+ nationalPrefix |
+ 1[4-6]XX-YYYY - Country-wide common number services, display as it is without hyphens --> |
+ <territory id="KR" countryCode="82" internationalPrefix="00(?:[124-68]|[37]\d{2})" |
+ nationalPrefix="0" nationalPrefixForParsing="0(8[1-46-8]|85\d{2})?" |
+ nationalPrefixFormattingRule="$NP$FG"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>1(?:0|1[19]|[69]9|5[458])|[57]0</leadingDigits> |
+ <leadingDigits>1(?:0|1[19]|[69]9|5(?:44|59|8))|[57]0</leadingDigits> |
+ <format>$1-$2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{2})(\d{3})(\d{4})"> |
+ <leadingDigits>1(?:[169][2-8]|[78]|5[1-4])|[68]0|[3-9][1-9][2-9]</leadingDigits> |
+ <leadingDigits>1(?:[169][2-8]|[78]|5(?:[1-3]|4[56]))|[68]0|[3-9][1-9][2-9]</leadingDigits> |
+ <format>$1-$2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d)(\d{4})"> |
+ <leadingDigits>131</leadingDigits> |
+ <leadingDigits>1312</leadingDigits> |
+ <format>$1-$2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{2})(\d{4})"> |
+ <leadingDigits>131</leadingDigits> |
+ <leadingDigits>131[13-9]</leadingDigits> |
+ <format>$1-$2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>13[2-9]</leadingDigits> |
+ <format>$1-$2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{2})(\d{2})(\d{3})(\d{4})"> |
+ <leadingDigits>30</leadingDigits> |
+ <format>$1-$2-$3-$4</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d)(\d{4})(\d{4})"> |
+ <leadingDigits>2(?:[26]|3[0-467])</leadingDigits> |
+ <leadingDigits>2(?:[26]|3(?:01|1[45]|2[17-9]|39|4|6[67]|7[078]))</leadingDigits> |
+ <format>$1-$2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d)(\d{3})(\d{4})"> |
+ <leadingDigits>2(?:3[0-35-9]|[457-9])</leadingDigits> |
+ <leadingDigits>2(?:3(?:0[02-9]|1[0-36-9]|2[02-6]|3[0-8]|6[0-589]|7[1-69]|[589])|[457-9])</leadingDigits> |
+ <format>$1-$2-$3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d)(\d{3})"> |
+ <leadingDigits>21[0-46-9]</leadingDigits> |
+ <leadingDigits>21(?:[0-247-9]|3[124]|6[1269])</leadingDigits> |
+ <format>$1-$2</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d)(\d{4})"> |
+ <leadingDigits>21[36]</leadingDigits> |
+ <leadingDigits>21(?:3[035-9]|6[03-578])</leadingDigits> |
+ <format>$1-$2</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{2})(\d{3})"> |
+ <leadingDigits>[3-9][1-9]1</leadingDigits> |
+ <leadingDigits>[3-9][1-9]1(?:[0-46-9])</leadingDigits> |
+ <leadingDigits>[3-9][1-9]1(?:[0-247-9]|3[124]|6[1269])</leadingDigits> |
+ <format>$1-$2</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{2})(\d{4})"> |
+ <leadingDigits>[3-9][1-9]1</leadingDigits> |
+ <leadingDigits>[3-9][1-9]1[36]</leadingDigits> |
+ <leadingDigits>[3-9][1-9]1(?:3[035-9]|6[03-578])</leadingDigits> |
+ <format>$1-$2</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>[1-79]\d{3,9}|8\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{4,10}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>(?:2|[34][1-3]|5[1-5]|6[1-4])(?:1\d{2,3}|[2-9]\d{6,7})</nationalNumberPattern> |
+ <possibleNumberPattern>\d{4,10}</possibleNumberPattern> |
+ <exampleNumber>22123456</exampleNumber> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>1[0-25-9]\d{7,8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9,10}</possibleNumberPattern> |
+ <exampleNumber>1023456789</exampleNumber> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>80\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9}</possibleNumberPattern> |
+ <exampleNumber>801234567</exampleNumber> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>60[2-9]\d{6}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9}</possibleNumberPattern> |
+ <exampleNumber>602345678</exampleNumber> |
+ </premiumRate> |
+ <personalNumber> |
+ <nationalNumberPattern>50\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ <exampleNumber>5012345678</exampleNumber> |
+ </personalNumber> |
+ <voip> |
+ <nationalNumberPattern>70\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ <exampleNumber>7012345678</exampleNumber> |
+ </voip> |
+ </territory> |
+ |
+ <!-- Mexico --> |
+ <territory id="MX" countryCode="52" internationalPrefix="00" |
+ nationalPrefix="01" nationalPrefixForParsing="01|04[45](\d{10})" |
+ nationalPrefixTransformRule="1$1"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>[89]00</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>33|55|81</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>[2467]|3[0-24-9]|5[0-46-9]|8[2-9]|9[1-9]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="1(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>1(?:33|55|81)</leadingDigits> |
+ <format>045 $1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="1(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>1(?:[124579]|3[0-24-9]|5[0-46-9]|8[02-9])</leadingDigits> |
+ <format>045 $1 $2 $3</format> |
+ </numberFormat> |
+ <intlNumberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>[89]00</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </intlNumberFormat> |
+ <intlNumberFormat pattern="(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>33|55|81</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </intlNumberFormat> |
+ <intlNumberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>[2467]|3[0-24-9]|5[0-46-9]|8[2-9]|9[1-9]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </intlNumberFormat> |
+ <intlNumberFormat pattern="(1)(\d{2})(\d{4})(\d{4})"> |
+ <leadingDigits>1(?:33|55|81)</leadingDigits> |
+ <format>$1 $2 $3 $4</format> |
+ </intlNumberFormat> |
+ <intlNumberFormat pattern="(1)(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>1(?:[124579]|3[0-24-9]|5[0-46-9]|8[02-9])</leadingDigits> |
+ <format>$1 $2 $3 $4</format> |
+ </intlNumberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>[1-9]\d{9,10}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{7,11}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>[2-9]\d{9}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{7,10}</possibleNumberPattern> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>1\d{10}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{11}</possibleNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>800\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>900\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- New Zealand --> |
+ <territory id="NZ" countryCode="64" internationalPrefix="00" |
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d)(\d{3})(\d{4})"> |
+ <leadingDigits>24|[34679]</leadingDigits> |
+ <format>$1-$2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d)(\d{3})(\d{3,5})"> |
+ <leadingDigits>2[179]</leadingDigits> |
+ <format>$1-$2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{3,4})"> |
+ <leadingDigits>[89]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern> |
+ [289]\d{7,9}| |
+ [3-7]\d{7} |
+ </nationalNumberPattern> |
+ <possibleNumberPattern>\d{7,10}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>24099\d{3}|(?:3[2-79]|[479][2-689]|6[235-9])\d{6}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{7,8}</possibleNumberPattern> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>2(?:[027]\d{7}|9\d{6,7}|1(?:0\d{5,7}|[12]\d{5,6}|[3-9]\d{5})|4[1-9]\d{6}|8\d{7,8})</nationalNumberPattern> |
+ <possibleNumberPattern>\d{8,10}</possibleNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>800\d{6,7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9,10}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>900\d{6,7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9,10}</possibleNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- Poland --> |
+ <!-- http://en.wikipedia.org/wiki/%2B48 --> |
+ <territory id="PL" countryCode="48" internationalPrefix="0~0" |
+ nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{2})(\d{3})(\d{2})(\d{2})"> |
+ <format>$1 $2 $3 $4</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>[1-9]\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9}</possibleNumberPattern> |
+ </generalDesc> |
+ <mobile> |
+ <nationalNumberPattern>(?:5[01]|6[069]|7[289]|88)\d{7}</nationalNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>800\d{6}</nationalNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>70\d{7}</nationalNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- Réunion (French Departments and Territories in the Indian Ocean) --> |
+ <!-- Note this shares the same country code as La Mayotte and French |
+ Southern Territories, and the formatting patterns here are used by all of |
+ them. This is present to test leadingDigits. --> |
+ <territory id="RE" countryCode="262" leadingDigits="262|6(?:9[23]|47)|8" |
+ internationalPrefix="00" nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"> |
+ <availableFormats> |
+ <numberFormat pattern="([268]\d{2})(\d{2})(\d{2})(\d{2})"> |
+ <format>$1 $2 $3 $4</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>[268]\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <!-- 0876 numbers are mentioned in the plan, but none in use can be |
+ found. --> |
+ <nationalNumberPattern>262\d{6}</nationalNumberPattern> |
+ <exampleNumber>262161234</exampleNumber> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>6(?:9[23]|47)\d{6}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9}</possibleNumberPattern> |
+ <exampleNumber>692123456</exampleNumber> |
+ </mobile> |
+ <!-- 08* Numbers in Réunion are the same as those valid in France. --> |
+ <tollFree> |
+ <nationalNumberPattern>80\d{7}</nationalNumberPattern> |
+ <exampleNumber>801234567</exampleNumber> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>8(?:1[01]|2[0156]|84|9[0-37-9])\d{6}</nationalNumberPattern> |
+ <exampleNumber>810123456</exampleNumber> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- Singapore --> |
+ <!-- http://www.ida.gov.sg/policies%20and%20regulation/20060508120124.aspx --> |
+ <territory id="SG" countryCode="65" internationalPrefix="0[0-3][0-9]"> |
+ <availableFormats> |
+ <numberFormat pattern="(\d{4})(\d{4})"> |
+ <leadingDigits>[369]|8[1-9]</leadingDigits> |
+ <format>$1 $2</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{4})(\d{3})(\d{4})"> |
+ <leadingDigits>1[89]</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <leadingDigits>800</leadingDigits> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>[13689]\d{7,10}</nationalNumberPattern> |
+ <!-- This specific pattern with the | is used to unit-test IsPossibleNumberWithReason. --> |
+ <possibleNumberPattern> |
+ \d{8}| |
+ \d{10,11} |
+ </possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>[36]\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{8}</possibleNumberPattern> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>[89]\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{8}</possibleNumberPattern> |
+ </mobile> |
+ <tollFree> |
+ <nationalNumberPattern>1?800\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10,11}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>1900\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{11}</possibleNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- United States --> |
+ <!-- http://www.nanpa.com/reports/reports_npa.html --> |
+ <!-- For testing purposes, numbers starting with 24 are not considered US |
+ numbers.--> |
+ <territory id="US" countryCode="1" internationalPrefix="011" |
+ preferredExtnPrefix=" extn. " nationalPrefix="1" |
+ mainCountryForCode="true" > |
+ <availableFormats> |
+ <numberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <format>$1 $2 $3</format> |
+ </numberFormat> |
+ <numberFormat pattern="(\d{3})(\d{4})"> |
+ <format>$1 $2</format> |
+ </numberFormat> |
+ <intlNumberFormat pattern="(\d{3})(\d{3})(\d{4})"> |
+ <format>$1 $2 $3</format> |
+ </intlNumberFormat> |
+ </availableFormats> |
+ <generalDesc> |
+ <nationalNumberPattern>[13-9]\d{9}|2[0-35-9]\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern> |
+ <exampleNumber>1234567890</exampleNumber> |
+ </generalDesc> |
+ <noInternationalDialling> |
+ <!-- This range is added for testing purposes only. --> |
+ <nationalNumberPattern>800\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </noInternationalDialling> |
+ <tollFree> |
+ <nationalNumberPattern>8(?:00|66|77|88)\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </tollFree> |
+ <premiumRate> |
+ <nationalNumberPattern>900\d{7}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{10}</possibleNumberPattern> |
+ </premiumRate> |
+ </territory> |
+ |
+ <!-- Mayotte --> |
+ <territory id="YT" countryCode="262" leadingDigits="269|639" |
+ internationalPrefix="00" nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"> |
+ <!-- Formatting as per La Réunion. --> |
+ <generalDesc> |
+ <nationalNumberPattern>[268]\d{8}</nationalNumberPattern> |
+ <possibleNumberPattern>\d{9}</possibleNumberPattern> |
+ </generalDesc> |
+ <fixedLine> |
+ <nationalNumberPattern>2696[0-4]\d{4}</nationalNumberPattern> |
+ <exampleNumber>269601234</exampleNumber> |
+ </fixedLine> |
+ <mobile> |
+ <nationalNumberPattern>639\d{6}</nationalNumberPattern> |
+ <exampleNumber>639123456</exampleNumber> |
+ </mobile> |
+ <!-- Same as in France. --> |
+ <tollFree> |
+ <nationalNumberPattern>80\d{7}</nationalNumberPattern> |
+ <exampleNumber>801234567</exampleNumber> |
+ </tollFree> |
+ </territory> |
+ </territories> |
+</phoneNumberMetadata> |
Property changes on: third_party\libphonenumber\resources\PhoneNumberMetaDataForTesting.xml |
___________________________________________________________________ |
Added: svn:eol-style |
+ LF |