Browse Source

JS: libphonenumber v3.3.

pull/567/head
Nikolaos Trogkanis 15 years ago
committed by Mihaela Rosca
parent
commit
b3c4841d25
6 changed files with 268 additions and 185 deletions
  1. +1
    -1
      javascript/README
  2. +49
    -11
      javascript/i18n/phonenumbers/asyoutypeformatter.js
  3. +101
    -79
      javascript/i18n/phonenumbers/metadata.js
  4. +3
    -1
      javascript/i18n/phonenumbers/metadatafortesting.js
  5. +100
    -78
      javascript/i18n/phonenumbers/metadatalite.js
  6. +14
    -15
      javascript/i18n/phonenumbers/phonenumberutil.js

+ 1
- 1
javascript/README View File

@ -25,7 +25,7 @@ pages with your web browser:
How to update:
==============
The JavaScript library is ported from the Java implementation (revision 166).
The JavaScript library is ported from the Java implementation (revision 171).
When the Java project gets updated follow these steps to update the JavaScript
project:


+ 49
- 11
javascript/i18n/phonenumbers/asyoutypeformatter.js View File

@ -19,11 +19,11 @@
* @fileoverview A formatter which formats phone numbers as they are entered.
* (based on the java implementation).
*
* <p>An AsYouTypeFormatter could be created by new AsYouTypeFormatter(). After
* that digits could be added by invoking {@link #inputDigit} on the formatter
* <p>An AsYouTypeFormatter can be created by new AsYouTypeFormatter(). After
* that, digits can be added by invoking {@link #inputDigit} on the formatter
* instance, and the partially formatted phone number will be returned each time
* a digit is added. {@link #clear} could be invoked before a new number needs
* to be formatted.
* a digit is added. {@link #clear} can be invoked before formatting a new
* number.
*
* <p>See the unittests for more details on how the formatter is to be used.
*
@ -198,6 +198,22 @@ i18n.phonenumbers.AsYouTypeFormatter.STANDALONE_DIGIT_PATTERN_ =
/\d(?=[^,}][^,}])/g;
/**
* A pattern that is used to determine if a numberFormat under availableFormats
* is eligible to be used by the AYTF. It is eligible when the format element
* under numberFormat contains groups of the dollar sign followed by a single
* digit, separated by valid phone number punctuation. This prevents invalid
* punctuation (such as the star sign in Israeli star numbers) getting into the
* output of the AYTF.
* @const
* @type {RegExp}
* @private
*/
i18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_ = new RegExp(
'^[' + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + ']*' +
'(\\$\\d[' + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + ']*)+$');
/**
* This is the minimum length of national number accrued that is required to
* trigger the formatter. The first element of the leadingDigitsPattern of
@ -268,14 +284,36 @@ i18n.phonenumbers.AsYouTypeFormatter.prototype.getAvailableFormats_ =
function(leadingThreeDigits) {
/** @type {Array.<i18n.phonenumbers.NumberFormat>} */
var formatList = (this.isInternationalFormatting_ && this.currentMetaData_
.intlNumberFormatCount() > 0) ? this.currentMetaData_
.intlNumberFormatArray() : this.currentMetaData_.numberFormatArray();
this.possibleFormats_ = formatList;
var formatList =
(this.isInternationalFormatting_ &&
this.currentMetaData_.intlNumberFormatCount() > 0) ?
this.currentMetaData_.intlNumberFormatArray() :
this.currentMetaData_.numberFormatArray();
/** @type {number} */
var formatListLength = formatList.length;
for (var i = 0; i < formatListLength; ++i) {
/** @type {i18n.phonenumbers.NumberFormat} */
var format = formatList[i];
if (this.isFormatEligible_(format.getFormatOrDefault())) {
this.possibleFormats_.push(format);
}
}
this.narrowDownPossibleFormats_(leadingThreeDigits);
};
/**
* @param {string} format
* @return {boolean}
* @private
*/
i18n.phonenumbers.AsYouTypeFormatter.prototype.isFormatEligible_ =
function(format) {
return i18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_
.test(format);
};
/**
* @param {string} leadingDigits
* @private
@ -348,7 +386,7 @@ i18n.phonenumbers.AsYouTypeFormatter.prototype.createFormattingTemplate_ =
/**
* Gets a formatting template which could be used to efficiently format a
* Gets a formatting template which can be used to efficiently format a
* partial number where digits are added one by one.
*
* @param {string} numberPattern
@ -379,7 +417,7 @@ i18n.phonenumbers.AsYouTypeFormatter.prototype.getFormattingTemplate_ =
/**
* Clears the internal state of the formatter, so it could be reused.
* Clears the internal state of the formatter, so it can be reused.
*/
i18n.phonenumbers.AsYouTypeFormatter.prototype.clear = function() {
this.currentOutput_ = '';
@ -421,7 +459,7 @@ i18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigit = function(nextChar) {
/**
* Same as {@link #inputDigit}, but remembers the position where
* {@code nextChar} is inserted, so that it could be retrieved later by using
* {@code nextChar} is inserted, so that it can be retrieved later by using
* {@link #getRememberedPosition}. The remembered position will be automatically
* adjusted if additional formatting characters are later inserted/removed in
* front of {@code nextChar}.


+ 101
- 79
javascript/i18n/phonenumbers/metadata.js View File

@ -26,7 +26,7 @@ goog.provide('i18n.phonenumbers.metadata');
/**
* A mapping from a country calling code to the region codes which denote the
* region represented by that country calling code. In the case of multiple
* countries sharing a calling code, such as the NANPA countries, the one
* countries sharing a calling code, such as the NANPA regions, the one
* indicated with "isMainCountryForCode" in the metadata should be first.
* @type {Object.<number, Array.<string>>}
*/
@ -352,16 +352,18 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"AM":[,[,,"[1-37-9]\\d{7}","\\d{5,8}"]
,"AM":[,[,,"[1-36-9]\\d{7}","\\d{5,8}"]
,[,,"(?:10\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\d{5}","\\d{5,8}",,,"10123456"]
,[,,"(?:77|9[1-469])\\d{6}","\\d{8}",,,"77123456"]
,[,,"(?:77|9[1-46-9])\\d{6}","\\d{8}",,,"77123456"]
,[,,"800\\d{5}","\\d{8}",,,"80012345"]
,[,,"90[016]\\d{5}","\\d{8}",,,"90012345"]
,[,,"80[1-4]\\d{5}","\\d{8}",,,"80112345"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"AM",374,"00","0",,,"0",,,,[[,"(\\d{2})(\\d{6})","$1 $2",["[17]|9[1-469]"]
,[,,"6027\\d{4}","\\d{8}",,,"60271234"]
,"AM",374,"00","0",,,"0",,,,[[,"(\\d{2})(\\d{6})","$1 $2",["[17]|9[1-9]"]
,"(0$1)",""]
,[,"(\\d{2})(\\d{6})","$1 $2",["6"]
,"0$1",""]
,[,"(\\d{3})(\\d{5})","$1 $2",["[23]"]
,"(0$1)",""]
,[,"(\\d{3})(\\d{2})(\\d{3})","$1 $2 $3",["8|90"]
@ -514,11 +516,11 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"AZ":[,[,,"[1-8]\\d{7,8}","\\d{5,9}"]
,"AZ":[,[,,"[1-9]\\d{7,8}","\\d{5,9}"]
,[,,"(?:1(?:(?:[28]\\d|9)\\d|02|1[0-589]|3[358]|4[013-79]|5[0-479]|6[02346-9]|7[0-24-8])|2(?:16|2\\d|3[0-24]|4[1468]|55|6[56]|79)|365?\\d|44\\d{2})\\d{5}","\\d{5,9}",,,"123123456"]
,[,,"(?:[46]0|5[015]|7[07])\\d{7}","\\d{9}",,,"401234567"]
,[,,"88\\d{7}","\\d{9}",,,"881234567"]
,[,,"NA","NA"]
,[,,"900200\\d{3}","\\d{9}",,,"900200123"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -532,6 +534,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,"(0$1)",""]
,[,"(\\d{2})(\\d{3})(\\d{2})(\\d{2})","$1 $2 $3 $4",["[4-8]"]
,"0$1",""]
,[,"(\\d{3})(\\d{2})(\\d{2})(\\d{2})","$1 $2 $3 $4",["9"]
,"0$1",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
@ -607,7 +611,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"BF":[,[,,"[2457]\\d{7}","\\d{8}"]
,[,,"(?:20(?:49|5[23]|9[016-9])|40(?:4[569]|55|7[0179])|50[34]\\d)\\d{4}","\\d{8}",,,"20491234"]
,[,,"7(?:[024-6]\\d|1[0-489]|3[0124]|7[01]|8[013-9]|9[0-4])\\d{5}","\\d{8}",,,"70123456"]
,[,,"7(?:[024-6]\\d|1[0-4689]|3[0-6]|7[01]|8[013-9]|9[0-4])\\d{5}","\\d{8}",,,"70123456"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -789,15 +793,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"BW":[,[,,"[2-9]\\d{6,7}","\\d{7,8}"]
,"BW":[,[,,"[2-79]\\d{6,7}","\\d{7,8}"]
,[,,"(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0235-9]|55|6\\d|7[01]|9[0-57])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[0389]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\d{4}","\\d{7}",,,"2401234"]
,[,,"7(?:[1-3]\\d{6}|4[0-7]\\d{5})","\\d{8}",,,"71123456"]
,[,,"8\\d{6}","\\d{7}",,,"8123456"]
,[,,"90\\d{5}","\\d{7}",,,"9012345"]
,[,,"7(?:[1-35]\\d{6}|[46][0-7]\\d{5})","\\d{8}",,,"71123456"]
,[,,"NA","NA"]
,[,,"90\\d{5}","\\d{7}",,,"9012345"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"BW",267,"00",,,,,,,,[[,"(7[1-4])(\\d{3})(\\d{3})","$1 $2 $3",["7"]
,[,,"79[12][01]\\d{4}","\\d{8}",,,"79101234"]
,"BW",267,"00",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",["[2-6]"]
,"",""]
,[,"(7\\d)(\\d{3})(\\d{3})","$1 $2 $3",["7"]
,"",""]
,[,"(90)(\\d{5})","$1 $2",["9"]
,"",""]
@ -825,7 +831,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"BZ":[,[,,"[2-8]\\d{6}|0\\d{10}","\\d{7}(?:\\d{4})?"]
,[,,"[234578][02]\\d{5}","\\d{7}",,,"2221234"]
,[,,"6(?:[01]\\d|2[0-5]|[67][01])\\d{4}","\\d{7}",,,"6221234"]
,[,,"6(?:[0-2]\\d|[67][01])\\d{4}","\\d{7}",,,"6221234"]
,[,,"0800\\d{7}","\\d{11}",,,"08001234123"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -919,7 +925,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"CI":[,[,,"[02-5]\\d{7}","\\d{8}"]
,[,,"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\d{5}","\\d{8}",,,"21234567"]
,[,,"(?:0[1-9]|4[04-9]|50|6[067])\\d{6}","\\d{8}",,,"01234567"]
,[,,"(?:0[1-9]|4[04-9]|5[07]|6[067])\\d{6}","\\d{8}",,,"01234567"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -1065,13 +1071,13 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"CR":[,[,,"[2489]\\d{7,9}","\\d{8,10}"]
,[,,"2[24-7]\\d{6}","\\d{8}",,,"22123456"]
,[,,"8[389]\\d{6}","\\d{8}",,,"83123456"]
,[,,"8(?:[389]\\d|7[0-3])\\d{5}","\\d{8}",,,"83123456"]
,[,,"800\\d{7}","\\d{10}",,,"8001234567"]
,[,,"90[059]\\d{7}","\\d{10}",,,"9001234567"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"4000\\d{4}","\\d{8}",,,"40001234"]
,"CR",506,"00",,,,"(1900)",,,,[[,"(\\d{4})(\\d{4})","$1 $2",["[24]|8[389]"]
,"CR",506,"00",,,,"(1900)",,,,[[,"(\\d{4})(\\d{4})","$1 $2",["[24]|8[3-9]"]
,"","$CC $1"]
,[,"(\\d{3})(\\d{3})(\\d{4})","$1-$2-$3",["[89]0"]
,"","$CC $1"]
@ -1366,18 +1372,23 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"10[1-9]\\d{3,7}|2(?:0(?:[16-8]\\d{3,7}|2[14-9]\\d{1,6}|[3-5]\\d{2,7}|9[0-7]\\d{1,6})|9\\d{4,8})|30[1-9]\\d{3,7}|7(?:1\\d{7}|3\\d{8}|5[03-9]\\d{2,7})","\\d{6,10}",,,"10112345"]
]
,"FJ":[,[]
,[]
,[]
,"FJ":[,[,,"[36-9]\\d{6}|0\\d{10}","\\d{7}(?:\\d{4})?"]
,[,,"(?:3[0-5]|6[25-7]|8[58])\\d{5}","\\d{7}",,,"3212345"]
,[,,"(?:7[0-4]|9[29])\\d{5}","\\d{7}",,,"7012345"]
,[,,"0800\\d{7}","\\d{11}",,,"08001234567"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"FJ",679,"00",,,,,,,1,,,[,,"NA","NA"]
,"FJ",679,"0(?:0|52)",,,,,,"00",,[[,"(\\d{3})(\\d{4})","$1 $2",["[36-9]"]
,"",""]
,[,"(\\d{4})(\\d{3})(\\d{4})","$1 $2 $3",["0"]
,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,1]
,"FK":[,[,,"[2-7]\\d{4}","\\d{5}"]
,[,,"[2-47]\\d{4}","\\d{5}",,,"31234"]
,[,,"[56]\\d{4}","\\d{5}",,,"51234"]
@ -1390,15 +1401,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"FM":[,[]
,[]
,[]
,"FM":[,[,,"[39]\\d{6}","\\d{7}"]
,[,,"3[2357]0[1-9]\\d{3}|9[2-6]\\d{5}","\\d{7}",,,"3201234"]
,[,,"3[2357]0[1-9]\\d{3}|9[2-7]\\d{5}","\\d{7}",,,"3501234"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"FM",691,"00",,,,,,,1,,,[,,"NA","NA"]
,"FM",691,"00",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -1452,7 +1465,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,1]
,"GB":[,[,,"\\d{7,10}","\\d{4,10}"]
,[,,"2(?:0[01378]|3[0189]|4[017]|8[0-46-9]|9[012])\\d{7}|1(?:(?:1(?:3[0-48]|[46][0-4]|5[012789]|7[0-39]|8[01349])|21[0-7]|31[0-8]|[459]1\\d|61[0-46-9]))\\d{6}|1(?:2(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-4789]|7[013-9]|9\\d)|3(?:0\\d|[25][02-9]|3[02-579]|[468][0-46-9]|7[1235679]|9[24578])|4(?:0[03-9]|[28][02-5789]|[37]\\d|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1235-9]|2[024-9]|3[015689]|4[02-9]|5[03-9]|6\\d|7[0-35-9]|8[0-468]|9[0-5789])|6(?:0[034689]|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0124578])|7(?:0[0246-9]|2\\d|3[023678]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-5789]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|2[02-689]|3[1-5789]|4[2-9]|5[0-579]|6[234789]|7[0124578]|8\\d|9[2-57]))\\d{6}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-4789]|8[345])))|3(?:638[2-5]|647[23]|8(?:47[04-9]|64[015789]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[123]))|5(?:24(?:3[2-79]|6\\d)|276\\d|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[567]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|955[0-4])|7(?:26(?:6[13-9]|7[0-7])|442\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|84(?:3[2-58]))|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}|176888[234678]\\d{2}|16977[23]\\d{3}","\\d{4,10}",,,"1212345678"]
,[,,"7(?:[1-4]\\d\\d|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[04-9]\\d|1[02-9]|2[0135-9]|3[0-689]))\\d{6}","\\d{10}",,,"7400123456"]
,[,,"7(?:[1-4]\\d\\d|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[04-9]\\d|1[02-9]|2[0-35-9]|3[0-689]))\\d{6}","\\d{10}",,,"7400123456"]
,[,,"80(?:0(?:1111|\\d{6,7})|8\\d{7})|500\\d{6}","\\d{7}(?:\\d{2,3})?",,,"8001234567"]
,[,,"(?:87[123]|9(?:[01]\\d|8[0-3]))\\d{7}","\\d{10}",,,"9012345678"]
,[,,"8(?:4(?:5464\\d|[2-5]\\d{7})|70\\d{7})","\\d{7}(?:\\d{3})?",,,"8431234567"]
@ -1606,7 +1619,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"GP":[,[,,"[56]\\d{8}","\\d{9}"]
,[,,"590(?:1[12]|2[0-68]|3[28]|4[126-8]|5[067]|6[018]|[89]\\d)\\d{4}","\\d{9}",,,"590201234"]
,[,,"690(?:00|[3-5]\\d|6[0-57-9]|7[1-6]|8[0-6]|9[09])\\d{4}","\\d{9}",,,"690301234"]
,[,,"690(?:00|1[1-9]|2[013-5]|[3-5]\\d|6[0-57-9]|7[1-6]|8[0-6]|9[09])\\d{4}","\\d{9}",,,"690301234"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -1697,15 +1710,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"GY":[,[]
,[]
,[]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"GY":[,[,,"[2-4679]\\d{6}","\\d{7}"]
,[,,"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\d|7[0-24-79])|3(?:2[25-9]|3\\d)|4(?:4[0-24]|5[56])|77[1-57])\\d{4}","\\d{7}",,,"2201234"]
,[,,"6\\d{6}","\\d{7}",,,"6091234"]
,[,,"(?:289|862)\\d{4}","\\d{7}",,,"2891234"]
,[,,"9008\\d{3}","\\d{7}",,,"9008123"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"GY",592,"001","0",,,"0",,,1,,,[,,"NA","NA"]
,"GY",592,"001",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -1715,7 +1730,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,[,,"800\\d{6}","\\d{9}",,,"800123456"]
,[,,"900\\d{8}","\\d{11}",,,"90012345678"]
,[,,"NA","NA"]
,[,,"8[1-3]\\d{6}","\\d{8}"]
,[,,"8[1-3]\\d{6}","\\d{8}",,,"81123456"]
,[,,"NA","NA"]
,"HK",852,"00",,,,,,,,[[,"(\\d{4})(\\d{4})","$1 $2",["[235-7]|[89](?:0[1-9]|[1-9])"]
,"",""]
@ -2051,8 +2066,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,[,,"3(?:0(?:07(?:35|81)|8901)|3\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))\\d{4}|55\\d{8}","\\d{10}",,,"5512345678"]
]
,"JM":[,[,,"[589]\\d{9}","\\d{7}(?:\\d{3})?"]
,[,,"876(?:(?:5[0-26]|6\\d|7[1-6]|9[2-8])\\d{5}|(?:7(?:0[2-689]|8[056]|9[45])|9(?:0[1-8]|1[02378]|9[2-468]))\\d{4})","\\d{7}(?:\\d{3})?",,,"8765123456"]
,[,,"876(?:(?:21|[348]\\d|5[78]|77)\\d|7(?:0[07]|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579]))\\d{4}","\\d{10}",,,"8762101234"]
,[,,"876(?:(?:5[0-26]|6\\d)\\d{5}|(?:7(?:0[2-689]|[1-6]\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\d|9[2-468]))\\d{4})","\\d{7}(?:\\d{3})?",,,"8765123456"]
,[,,"876(?:(?:2[178]|[348]\\d|5[78])\\d|7(?:0[07]|7\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579]))\\d{4}","\\d{10}",,,"8762101234"]
,[,,"8(?:00|55|66|77|88)[2-9]\\d{6}","\\d{10}",,,"8002123456"]
,[,,"900[2-9]\\d{6}","\\d{10}",,,"9002123456"]
,[,,"NA","NA"]
@ -2146,7 +2161,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"KH":[,[,,"[1-9]\\d{7,9}","\\d{6,10}"]
,[,,"(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])[2-47-9]\\d{5}","\\d{6,8}",,,"23456789"]
,[,,"(?:(?:1[0-35-9]|9[1-49])[1-9]|85[2-689])\\d{5}","\\d{8}",,,"91234567"]
,[,,"(?:(?:1[0-35-9]|9[1-49])[1-9]|8(?:0[89]|5[2-689]))\\d{5}","\\d{8}",,,"91234567"]
,[,,"1800(?:1\\d|2[09])\\d{4}","\\d{10}",,,"1800123456"]
,[,,"1900(?:1\\d|2[09])\\d{4}","\\d{10}",,,"1900123456"]
,[,,"NA","NA"]
@ -2308,15 +2323,15 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"LB":[,[,,"[13-9]\\d{6,7}","\\d{7,8}"]
,[,,"(?:[14-6]\\d{2}|7(?:[2-57-9]\\d|62)|[89][2-9]\\d)\\d{4}","\\d{7}",,,"1123456"]
,[,,"(?:3\\d|7(?:[01]\\d|66))\\d{5}","\\d{7,8}",,,"71123456"]
,[,,"(?:3\\d|7(?:[01]\\d|6[67]))\\d{5}","\\d{7,8}",,,"71123456"]
,[,,"NA","NA"]
,[,,"8[01]\\d{6}","\\d{8}",,,"80123456"]
,[,,"9[01]\\d{6}","\\d{8}",,,"90123456"]
,[,,"8[01]\\d{6}","\\d{8}",,,"80123456"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"LB",961,"00","0",,,"0",,,,[[,"(\\d)(\\d{3})(\\d{3})","$1 $2 $3",["[13-6]|7(?:[2-57-9]|62)|[89][2-9]"]
,"0$1",""]
,[,"([7-9]\\d)(\\d{3})(\\d{3})","$1 $2 $3",["[89][01]|7(?:[01]|66)"]
,[,"([7-9]\\d)(\\d{3})(\\d{3})","$1 $2 $3",["[89][01]|7(?:[01]|6[67])"]
,"0$1",""]
]
,,[,,"NA","NA"]
@ -2470,7 +2485,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"LY":[,[,,"[25679]\\d{8}","\\d{7,9}"]
,[,,"(?:2[1345]|5[1347]|6[123479]|71)\\d{7}","\\d{7,9}",,,"212345678"]
,[,,"9[12356]\\d{7}","\\d{9}",,,"912345678"]
,[,,"9[1-6]\\d{7}","\\d{9}",,,"912345678"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -2771,7 +2786,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"MV":[,[,,"[367]\\d{6}|9(?:00\\d{7}|\\d{6})","\\d{7,10}"]
,[,,"(?:3(?:0[01]|3[0-59]|)|6(?:[567][02468]|8[024689]|90))\\d{4}","\\d{7}",,,"6701234"]
,[,,"(?:7[36-9]|9[6-9])\\d{5}","\\d{7}",,,"7712345"]
,[,,"(?:7[3-9]|9[6-9])\\d{5}","\\d{7}",,,"7712345"]
,[,,"NA","NA"]
,[,,"900\\d{7}","\\d{10}",,,"9001234567"]
,[,,"NA","NA"]
@ -2927,15 +2942,20 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
,1]
,"NF":[,[]
,[]
,[]
,"NF":[,[,,"[13]\\d{5}","\\d{5,6}"]
,[,,"(?:1(?:06|17|28|39)|3[012]\\d)\\d{3}","\\d{5,6}",,,"106609"]
,[,,"38\\d{4}","\\d{5,6}",,,"381234"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"NF",672,"00",,,,,,,1,,,[,,"NA","NA"]
,"NF",672,"00",,,,,,,,[[,"(\\d{2})(\\d{4})","$1 $2",["1"]
,"",""]
,[,"(\\d)(\\d{5})","$1 $2",["3"]
,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -2964,15 +2984,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"NI":[,[]
,[]
,[]
,[,,"NA","NA"]
,"NI":[,[,,"[128]\\d{7}","\\d{8}"]
,[,,"2\\d{7}","\\d{8}",,,"21234567"]
,[,,"8\\d{7}","\\d{8}",,,"81234567"]
,[,,"1800\\d{4}","\\d{8}",,,"18001234"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"NI",505,"00","0",,,"0",,,1,,,[,,"NA","NA"]
,"NI",505,"00",,,,,,,,[[,"(\\d{4})(\\d{4})","$1 $2",,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -3033,15 +3055,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"NR":[,[]
,[]
,[]
,"NR":[,[,,"[458]\\d{6}","\\d{7}"]
,[,,"(?:444|888)\\d{4}","\\d{7}",,,"4441234"]
,[,,"55[5-9]\\d{4}","\\d{7}",,,"5551234"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"NR",674,"00","0",,,"0",,,1,,,[,,"NA","NA"]
,"NR",674,"00",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -3119,7 +3143,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"PE",51,"00","0"," Anexo ",,"0",,,,[[,"(1)(\\d{7})","$1 $2",["1"]
,"PE",51,"19(?:1[124]|77|90)00","0"," Anexo ",,"0",,,,[[,"(1)(\\d{7})","$1 $2",["1"]
,"($1)",""]
,[,"([4-8]\\d)(\\d{6})","$1 $2",["[4-8]"]
,"($1)",""]
@ -3188,7 +3212,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"PK":[,[,,"1\\d{8}|[2-8]\\d{5,11}|9(?:[013-9]\\d{4,9}|2\\d(?:111\\d{6}|\\d{3,7}))","\\d{6,12}"]
,[,,"(?:21|42)[2-9]\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\d{6}|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8]))[2-9]\\d{5,6}|58[126]\\d{7}","\\d{6,10}",,,"2123456789"]
,[,,"3(?:0\\d|1[2-5]|2[1-3]|3[1-6]|4[2-6]|64)\\d{7}","\\d{10}",,,"3012345678"]
,[,,"3(?:0\\d|1[2-5]|2[1-3]|3[1-6]|4[2-7]|64)\\d{7}","\\d{10}",,,"3012345678"]
,[,,"800\\d{5}","\\d{8}",,,"80012345"]
,[,,"900\\d{5}","\\d{8}",,,"90012345"]
,[,,"NA","NA"]
@ -3746,17 +3770,15 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"SZ":[,[,,"[02-7]\\d{6,7}","\\d{7,8}"]
,[,,"2?(?:2(?:0[07]|[13]7|2[57])|3(?:0[34]|[1278]3|3[23]|[46][34])|(?:40[4-69]|16|2[12]|3[57]|[4578]2|67)|5(?:0[5-7]|1[6-9]|[23][78]|48|5[01]))\\d{4}","\\d{7,8}",,,"2171234"]
,[,,"(?:6|7[6-8])\\d{6}","\\d{7,8}",,,"76123456"]
,"SZ":[,[,,"[027]\\d{7}","\\d{8}"]
,[,,"2(?:2(?:0[07]|[13]7|2[57])|3(?:0[34]|[1278]3|3[23]|[46][34])|(?:40[4-69]|67)|5(?:0[5-7]|1[6-9]|[23][78]|48|5[01]))\\d{4}","\\d{8}",,,"22171234"]
,[,,"7[6-8]\\d{6}","\\d{8}",,,"76123456"]
,[,,"0800\\d{4}","\\d{8}",,,"08001234"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"SZ",268,"00",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",["[2-6]"]
,"",""]
,[,"(\\d{4})(\\d{4})","$1 $2",["[027]"]
,"SZ",268,"00",,,,,,,,[[,"(\\d{4})(\\d{4})","$1 $2",["[027]"]
,"",""]
]
,,[,,"NA","NA"]
@ -3836,22 +3858,22 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"TJ":[,[,,"[349]\\d{8}","\\d{3,9}"]
,[,,"(?:3(?:1[3-5]|2[245]|31|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}","\\d{3,9}",,,"372123456"]
,[,,"9[0-35-9]\\d{7}","\\d{9}",,,"917123456"]
,"TJ":[,[,,"[3-59]\\d{8}","\\d{3,9}"]
,[,,"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}","\\d{3,9}",,,"372123456"]
,[,,"(?:505|9[0-35-9]\\d)\\d{6}","\\d{9}",,,"917123456"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"TJ",992,"8~10","8",,,"8",,,,[[,"([349]\\d{2})(\\d{2})(\\d{4})","$1 $2 $3",["[34]7|91[78]"]
,"8$1",""]
,[,"([49]\\d)(\\d{3})(\\d{4})","$1 $2 $3",["4[48]|9(?:19|[0235-9])"]
,"8$1",""]
,"(8) $1",""]
,[,"([459]\\d)(\\d{3})(\\d{4})","$1 $2 $3",["4[48]|5|9(?:19|[0235-9])"]
,"(8) $1",""]
,[,"(331700)(\\d)(\\d{2})","$1 $2 $3",["331","3317","33170","331700"]
,"8$1",""]
,"(8) $1",""]
,[,"(\\d{4})(\\d)(\\d{4})","$1 $2 $3",["3[1-5]","3(?:[1245]|3(?:[02-9]|1[0-589]))"]
,"8$1",""]
,"(8) $1",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
@ -3954,15 +3976,15 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,"868",[,,"NA","NA"]
,[,,"NA","NA"]
]
,"TV":[,[]
,[]
,[]
,"TV":[,[,,"[29]\\d{4,5}","\\d{5,6}"]
,[,,"2[02-9]\\d{3}","\\d{5}",,,"20123"]
,[,,"90\\d{4}","\\d{6}",,,"901234"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"TV",688,"00",,,,,,,1,,,[,,"NA","NA"]
,"TV",688,"00",,,,,,,,,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -4041,8 +4063,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,[,,"NA","NA"]
]
,"US":[,[,,"[2-9]\\d{9}","\\d{7}(?:\\d{3})?"]
,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[4589]|3[149]|4[08]|5[1-46]|6[0279]|7[06]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|47|5[12]|6[01]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[014]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[036]|3[016]|4[16]|5[017]|6[0-29]|78|8[12])|7(?:0[1-46-8]|1[2-9]|2[047]|3[124]|4[07]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[06-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[058]|3[1678]|4[0179]|5[1246]|7[0-3589]|8[059]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?",,,"2012345678"]
,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[4589]|3[149]|4[08]|5[1-46]|6[0279]|7[06]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|47|5[12]|6[01]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[014]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[036]|3[016]|4[16]|5[017]|6[0-29]|78|8[12])|7(?:0[1-46-8]|1[2-9]|2[047]|3[124]|4[07]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[06-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[058]|3[1678]|4[0179]|5[1246]|7[0-3589]|8[059]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?",,,"2012345678"]
,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[4589]|3[149]|4[08]|5[1-46]|6[0279]|7[06]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|47|5[12]|6[01]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[036]|3[016]|4[16]|5[017]|6[0-29]|78|8[12])|7(?:0[1-46-8]|1[2-9]|2[047]|3[124]|4[07]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[06-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[1678]|4[0179]|5[1246]|7[0-3589]|8[059]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?",,,"2012345678"]
,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[4589]|3[149]|4[08]|5[1-46]|6[0279]|7[06]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|47|5[12]|6[01]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[036]|3[016]|4[16]|5[017]|6[0-29]|78|8[12])|7(?:0[1-46-8]|1[2-9]|2[047]|3[124]|4[07]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[06-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[1678]|4[0179]|5[1246]|7[0-3589]|8[059]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?",,,"2012345678"]
,[,,"8(?:00|55|66|77|88)[2-9]\\d{6}","\\d{10}",,,"8002345678"]
,[,,"900[2-9]\\d{6}","\\d{10}",,,"9002345678"]
,[,,"NA","NA"]


+ 3
- 1
javascript/i18n/phonenumbers/metadatafortesting.js View File

@ -26,7 +26,7 @@ goog.provide('i18n.phonenumbers.metadata');
/**
* A mapping from a country calling code to the region codes which denote the
* region represented by that country calling code. In the case of multiple
* countries sharing a calling code, such as the NANPA countries, the one
* countries sharing a calling code, such as the NANPA regions, the one
* indicated with "isMainCountryForCode" in the metadata should be first.
* @type {Object.<number, Array.<string>>}
*/
@ -225,6 +225,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,"0$1",""]
,[,"(\\d{3})(\\d{2})(\\d{4})","$1 $2 $3",["[23]"]
,"0$1",""]
,[,"(\\d{4})","*$1",["[23]"]
,"0$1",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]


+ 100
- 78
javascript/i18n/phonenumbers/metadatalite.js View File

@ -26,7 +26,7 @@ goog.provide('i18n.phonenumbers.metadata');
/**
* A mapping from a country calling code to the region codes which denote the
* region represented by that country calling code. In the case of multiple
* countries sharing a calling code, such as the NANPA countries, the one
* countries sharing a calling code, such as the NANPA regions, the one
* indicated with "isMainCountryForCode" in the metadata should be first.
* @type {Object.<number, Array.<string>>}
*/
@ -352,16 +352,18 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"AM":[,[,,"[1-37-9]\\d{7}","\\d{5,8}"]
,"AM":[,[,,"[1-36-9]\\d{7}","\\d{5,8}"]
,[,,"(?:10\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\d{5}","\\d{5,8}"]
,[,,"(?:77|9[1-469])\\d{6}","\\d{8}"]
,[,,"(?:77|9[1-46-9])\\d{6}","\\d{8}"]
,[,,"800\\d{5}","\\d{8}"]
,[,,"90[016]\\d{5}","\\d{8}"]
,[,,"80[1-4]\\d{5}","\\d{8}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"AM",374,"00","0",,,"0",,,,[[,"(\\d{2})(\\d{6})","$1 $2",["[17]|9[1-469]"]
,[,,"6027\\d{4}","\\d{8}"]
,"AM",374,"00","0",,,"0",,,,[[,"(\\d{2})(\\d{6})","$1 $2",["[17]|9[1-9]"]
,"(0$1)",""]
,[,"(\\d{2})(\\d{6})","$1 $2",["6"]
,"0$1",""]
,[,"(\\d{3})(\\d{5})","$1 $2",["[23]"]
,"(0$1)",""]
,[,"(\\d{3})(\\d{2})(\\d{3})","$1 $2 $3",["8|90"]
@ -514,11 +516,11 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"AZ":[,[,,"[1-8]\\d{7,8}","\\d{5,9}"]
,"AZ":[,[,,"[1-9]\\d{7,8}","\\d{5,9}"]
,[,,"(?:1(?:(?:[28]\\d|9)\\d|02|1[0-589]|3[358]|4[013-79]|5[0-479]|6[02346-9]|7[0-24-8])|2(?:16|2\\d|3[0-24]|4[1468]|55|6[56]|79)|365?\\d|44\\d{2})\\d{5}","\\d{5,9}"]
,[,,"(?:[46]0|5[015]|7[07])\\d{7}","\\d{9}"]
,[,,"88\\d{7}","\\d{9}"]
,[,,"NA","NA"]
,[,,"900200\\d{3}","\\d{9}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -532,6 +534,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,"(0$1)",""]
,[,"(\\d{2})(\\d{3})(\\d{2})(\\d{2})","$1 $2 $3 $4",["[4-8]"]
,"0$1",""]
,[,"(\\d{3})(\\d{2})(\\d{2})(\\d{2})","$1 $2 $3 $4",["9"]
,"0$1",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
@ -607,7 +611,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"BF":[,[,,"[2457]\\d{7}","\\d{8}"]
,[,,"(?:20(?:49|5[23]|9[016-9])|40(?:4[569]|55|7[0179])|50[34]\\d)\\d{4}","\\d{8}"]
,[,,"7(?:[024-6]\\d|1[0-489]|3[0124]|7[01]|8[013-9]|9[0-4])\\d{5}","\\d{8}"]
,[,,"7(?:[024-6]\\d|1[0-4689]|3[0-6]|7[01]|8[013-9]|9[0-4])\\d{5}","\\d{8}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -789,15 +793,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"BW":[,[,,"[2-9]\\d{6,7}","\\d{7,8}"]
,"BW":[,[,,"[2-79]\\d{6,7}","\\d{7,8}"]
,[,,"(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0235-9]|55|6\\d|7[01]|9[0-57])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[0389]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\d{4}","\\d{7}"]
,[,,"7(?:[1-3]\\d{6}|4[0-7]\\d{5})","\\d{8}"]
,[,,"8\\d{6}","\\d{7}"]
,[,,"90\\d{5}","\\d{7}"]
,[,,"7(?:[1-35]\\d{6}|[46][0-7]\\d{5})","\\d{8}"]
,[,,"NA","NA"]
,[,,"90\\d{5}","\\d{7}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"BW",267,"00",,,,,,,,[[,"(7[1-4])(\\d{3})(\\d{3})","$1 $2 $3",["7"]
,[,,"79[12][01]\\d{4}","\\d{8}"]
,"BW",267,"00",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",["[2-6]"]
,"",""]
,[,"(7\\d)(\\d{3})(\\d{3})","$1 $2 $3",["7"]
,"",""]
,[,"(90)(\\d{5})","$1 $2",["9"]
,"",""]
@ -825,7 +831,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"BZ":[,[,,"[2-8]\\d{6}|0\\d{10}","\\d{7}(?:\\d{4})?"]
,[,,"[234578][02]\\d{5}","\\d{7}"]
,[,,"6(?:[01]\\d|2[0-5]|[67][01])\\d{4}","\\d{7}"]
,[,,"6(?:[0-2]\\d|[67][01])\\d{4}","\\d{7}"]
,[,,"0800\\d{7}","\\d{11}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -919,7 +925,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"CI":[,[,,"[02-5]\\d{7}","\\d{8}"]
,[,,"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\d{5}","\\d{8}"]
,[,,"(?:0[1-9]|4[04-9]|50|6[067])\\d{6}","\\d{8}"]
,[,,"(?:0[1-9]|4[04-9]|5[07]|6[067])\\d{6}","\\d{8}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -1065,13 +1071,13 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"CR":[,[,,"[2489]\\d{7,9}","\\d{8,10}"]
,[,,"2[24-7]\\d{6}","\\d{8}"]
,[,,"8[389]\\d{6}","\\d{8}"]
,[,,"8(?:[389]\\d|7[0-3])\\d{5}","\\d{8}"]
,[,,"800\\d{7}","\\d{10}"]
,[,,"90[059]\\d{7}","\\d{10}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"4000\\d{4}","\\d{8}"]
,"CR",506,"00",,,,"(1900)",,,,[[,"(\\d{4})(\\d{4})","$1 $2",["[24]|8[389]"]
,"CR",506,"00",,,,"(1900)",,,,[[,"(\\d{4})(\\d{4})","$1 $2",["[24]|8[3-9]"]
,"","$CC $1"]
,[,"(\\d{3})(\\d{3})(\\d{4})","$1-$2-$3",["[89]0"]
,"","$CC $1"]
@ -1366,18 +1372,23 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"10[1-9]\\d{3,7}|2(?:0(?:[16-8]\\d{3,7}|2[14-9]\\d{1,6}|[3-5]\\d{2,7}|9[0-7]\\d{1,6})|9\\d{4,8})|30[1-9]\\d{3,7}|7(?:1\\d{7}|3\\d{8}|5[03-9]\\d{2,7})","\\d{6,10}"]
]
,"FJ":[,[]
,[]
,[]
,[,,"NA","NA"]
,"FJ":[,[,,"[36-9]\\d{6}|0\\d{10}","\\d{7}(?:\\d{4})?"]
,[,,"(?:3[0-5]|6[25-7]|8[58])\\d{5}","\\d{7}"]
,[,,"(?:7[0-4]|9[29])\\d{5}","\\d{7}"]
,[,,"0800\\d{7}","\\d{11}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"FJ",679,"00",,,,,,,1,,,[,,"NA","NA"]
,"FJ",679,"0(?:0|52)",,,,,,"00",,[[,"(\\d{3})(\\d{4})","$1 $2",["[36-9]"]
,"",""]
,[,"(\\d{4})(\\d{3})(\\d{4})","$1 $2 $3",["0"]
,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,1]
,"FK":[,[,,"[2-7]\\d{4}","\\d{5}"]
,[,,"[2-47]\\d{4}","\\d{5}"]
,[,,"[56]\\d{4}","\\d{5}"]
@ -1390,15 +1401,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"FM":[,[]
,[]
,[]
,"FM":[,[,,"[39]\\d{6}","\\d{7}"]
,[,,"3[2357]0[1-9]\\d{3}|9[2-6]\\d{5}","\\d{7}"]
,[,,"3[2357]0[1-9]\\d{3}|9[2-7]\\d{5}","\\d{7}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"FM",691,"00",,,,,,,1,,,[,,"NA","NA"]
,"FM",691,"00",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -1452,7 +1465,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,1]
,"GB":[,[,,"\\d{7,10}","\\d{4,10}"]
,[,,"2(?:0[01378]|3[0189]|4[017]|8[0-46-9]|9[012])\\d{7}|1(?:(?:1(?:3[0-48]|[46][0-4]|5[012789]|7[0-39]|8[01349])|21[0-7]|31[0-8]|[459]1\\d|61[0-46-9]))\\d{6}|1(?:2(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-4789]|7[013-9]|9\\d)|3(?:0\\d|[25][02-9]|3[02-579]|[468][0-46-9]|7[1235679]|9[24578])|4(?:0[03-9]|[28][02-5789]|[37]\\d|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1235-9]|2[024-9]|3[015689]|4[02-9]|5[03-9]|6\\d|7[0-35-9]|8[0-468]|9[0-5789])|6(?:0[034689]|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0124578])|7(?:0[0246-9]|2\\d|3[023678]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-5789]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|2[02-689]|3[1-5789]|4[2-9]|5[0-579]|6[234789]|7[0124578]|8\\d|9[2-57]))\\d{6}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-4789]|8[345])))|3(?:638[2-5]|647[23]|8(?:47[04-9]|64[015789]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[123]))|5(?:24(?:3[2-79]|6\\d)|276\\d|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[567]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|955[0-4])|7(?:26(?:6[13-9]|7[0-7])|442\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|84(?:3[2-58]))|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}|176888[234678]\\d{2}|16977[23]\\d{3}","\\d{4,10}"]
,[,,"7(?:[1-4]\\d\\d|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[04-9]\\d|1[02-9]|2[0135-9]|3[0-689]))\\d{6}","\\d{10}"]
,[,,"7(?:[1-4]\\d\\d|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[04-9]\\d|1[02-9]|2[0-35-9]|3[0-689]))\\d{6}","\\d{10}"]
,[,,"80(?:0(?:1111|\\d{6,7})|8\\d{7})|500\\d{6}","\\d{7}(?:\\d{2,3})?"]
,[,,"(?:87[123]|9(?:[01]\\d|8[0-3]))\\d{7}","\\d{10}"]
,[,,"8(?:4(?:5464\\d|[2-5]\\d{7})|70\\d{7})","\\d{7}(?:\\d{3})?"]
@ -1606,7 +1619,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"GP":[,[,,"[56]\\d{8}","\\d{9}"]
,[,,"590(?:1[12]|2[0-68]|3[28]|4[126-8]|5[067]|6[018]|[89]\\d)\\d{4}","\\d{9}"]
,[,,"690(?:00|[3-5]\\d|6[0-57-9]|7[1-6]|8[0-6]|9[09])\\d{4}","\\d{9}"]
,[,,"690(?:00|1[1-9]|2[013-5]|[3-5]\\d|6[0-57-9]|7[1-6]|8[0-6]|9[09])\\d{4}","\\d{9}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -1697,15 +1710,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"GY":[,[]
,[]
,[]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"GY":[,[,,"[2-4679]\\d{6}","\\d{7}"]
,[,,"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\d|7[0-24-79])|3(?:2[25-9]|3\\d)|4(?:4[0-24]|5[56])|77[1-57])\\d{4}","\\d{7}"]
,[,,"6\\d{6}","\\d{7}"]
,[,,"(?:289|862)\\d{4}","\\d{7}"]
,[,,"9008\\d{3}","\\d{7}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"GY",592,"001","0",,,"0",,,1,,,[,,"NA","NA"]
,"GY",592,"001",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -2051,8 +2066,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,[,,"3(?:0(?:07(?:35|81)|8901)|3\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))\\d{4}|55\\d{8}","\\d{10}"]
]
,"JM":[,[,,"[589]\\d{9}","\\d{7}(?:\\d{3})?"]
,[,,"876(?:(?:5[0-26]|6\\d|7[1-6]|9[2-8])\\d{5}|(?:7(?:0[2-689]|8[056]|9[45])|9(?:0[1-8]|1[02378]|9[2-468]))\\d{4})","\\d{7}(?:\\d{3})?"]
,[,,"876(?:(?:21|[348]\\d|5[78]|77)\\d|7(?:0[07]|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579]))\\d{4}","\\d{10}"]
,[,,"876(?:(?:5[0-26]|6\\d)\\d{5}|(?:7(?:0[2-689]|[1-6]\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\d|9[2-468]))\\d{4})","\\d{7}(?:\\d{3})?"]
,[,,"876(?:(?:2[178]|[348]\\d|5[78])\\d|7(?:0[07]|7\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579]))\\d{4}","\\d{10}"]
,[,,"8(?:00|55|66|77|88)[2-9]\\d{6}","\\d{10}"]
,[,,"900[2-9]\\d{6}","\\d{10}"]
,[,,"NA","NA"]
@ -2146,7 +2161,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"KH":[,[,,"[1-9]\\d{7,9}","\\d{6,10}"]
,[,,"(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])[2-47-9]\\d{5}","\\d{6,8}"]
,[,,"(?:(?:1[0-35-9]|9[1-49])[1-9]|85[2-689])\\d{5}","\\d{8}"]
,[,,"(?:(?:1[0-35-9]|9[1-49])[1-9]|8(?:0[89]|5[2-689]))\\d{5}","\\d{8}"]
,[,,"1800(?:1\\d|2[09])\\d{4}","\\d{10}"]
,[,,"1900(?:1\\d|2[09])\\d{4}","\\d{10}"]
,[,,"NA","NA"]
@ -2308,15 +2323,15 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"LB":[,[,,"[13-9]\\d{6,7}","\\d{7,8}"]
,[,,"(?:[14-6]\\d{2}|7(?:[2-57-9]\\d|62)|[89][2-9]\\d)\\d{4}","\\d{7}"]
,[,,"(?:3\\d|7(?:[01]\\d|66))\\d{5}","\\d{7,8}"]
,[,,"(?:3\\d|7(?:[01]\\d|6[67]))\\d{5}","\\d{7,8}"]
,[,,"NA","NA"]
,[,,"8[01]\\d{6}","\\d{8}"]
,[,,"9[01]\\d{6}","\\d{8}"]
,[,,"8[01]\\d{6}","\\d{8}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"LB",961,"00","0",,,"0",,,,[[,"(\\d)(\\d{3})(\\d{3})","$1 $2 $3",["[13-6]|7(?:[2-57-9]|62)|[89][2-9]"]
,"0$1",""]
,[,"([7-9]\\d)(\\d{3})(\\d{3})","$1 $2 $3",["[89][01]|7(?:[01]|66)"]
,[,"([7-9]\\d)(\\d{3})(\\d{3})","$1 $2 $3",["[89][01]|7(?:[01]|6[67])"]
,"0$1",""]
]
,,[,,"NA","NA"]
@ -2470,7 +2485,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"LY":[,[,,"[25679]\\d{8}","\\d{7,9}"]
,[,,"(?:2[1345]|5[1347]|6[123479]|71)\\d{7}","\\d{7,9}"]
,[,,"9[12356]\\d{7}","\\d{9}"]
,[,,"9[1-6]\\d{7}","\\d{9}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
@ -2771,7 +2786,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"MV":[,[,,"[367]\\d{6}|9(?:00\\d{7}|\\d{6})","\\d{7,10}"]
,[,,"(?:3(?:0[01]|3[0-59]|)|6(?:[567][02468]|8[024689]|90))\\d{4}","\\d{7}"]
,[,,"(?:7[36-9]|9[6-9])\\d{5}","\\d{7}"]
,[,,"(?:7[3-9]|9[6-9])\\d{5}","\\d{7}"]
,[,,"NA","NA"]
,[,,"900\\d{7}","\\d{10}"]
,[,,"NA","NA"]
@ -2927,15 +2942,20 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
,1]
,"NF":[,[]
,[]
,[]
,"NF":[,[,,"[13]\\d{5}","\\d{5,6}"]
,[,,"(?:1(?:06|17|28|39)|3[012]\\d)\\d{3}","\\d{5,6}"]
,[,,"38\\d{4}","\\d{5,6}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"NF",672,"00",,,,,,,1,,,[,,"NA","NA"]
,"NF",672,"00",,,,,,,,[[,"(\\d{2})(\\d{4})","$1 $2",["1"]
,"",""]
,[,"(\\d)(\\d{5})","$1 $2",["3"]
,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -2964,15 +2984,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"NI":[,[]
,[]
,[]
,[,,"NA","NA"]
,"NI":[,[,,"[128]\\d{7}","\\d{8}"]
,[,,"2\\d{7}","\\d{8}"]
,[,,"8\\d{7}","\\d{8}"]
,[,,"1800\\d{4}","\\d{8}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"NI",505,"00","0",,,"0",,,1,,,[,,"NA","NA"]
,"NI",505,"00",,,,,,,,[[,"(\\d{4})(\\d{4})","$1 $2",,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -3033,15 +3055,17 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"NR":[,[]
,[]
,[]
,"NR":[,[,,"[458]\\d{6}","\\d{7}"]
,[,,"(?:444|888)\\d{4}","\\d{7}"]
,[,,"55[5-9]\\d{4}","\\d{7}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"NR",674,"00","0",,,"0",,,1,,,[,,"NA","NA"]
,"NR",674,"00",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",,"",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -3119,7 +3143,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"PE",51,"00","0"," Anexo ",,"0",,,,[[,"(1)(\\d{7})","$1 $2",["1"]
,"PE",51,"19(?:1[124]|77|90)00","0"," Anexo ",,"0",,,,[[,"(1)(\\d{7})","$1 $2",["1"]
,"($1)",""]
,[,"([4-8]\\d)(\\d{6})","$1 $2",["[4-8]"]
,"($1)",""]
@ -3188,7 +3212,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
]
,"PK":[,[,,"1\\d{8}|[2-8]\\d{5,11}|9(?:[013-9]\\d{4,9}|2\\d(?:111\\d{6}|\\d{3,7}))","\\d{6,12}"]
,[,,"(?:21|42)[2-9]\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\d{6}|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8]))[2-9]\\d{5,6}|58[126]\\d{7}","\\d{6,10}"]
,[,,"3(?:0\\d|1[2-5]|2[1-3]|3[1-6]|4[2-6]|64)\\d{7}","\\d{10}"]
,[,,"3(?:0\\d|1[2-5]|2[1-3]|3[1-6]|4[2-7]|64)\\d{7}","\\d{10}"]
,[,,"800\\d{5}","\\d{8}"]
,[,,"900\\d{5}","\\d{8}"]
,[,,"NA","NA"]
@ -3746,17 +3770,15 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"SZ":[,[,,"[02-7]\\d{6,7}","\\d{7,8}"]
,[,,"2?(?:2(?:0[07]|[13]7|2[57])|3(?:0[34]|[1278]3|3[23]|[46][34])|(?:40[4-69]|16|2[12]|3[57]|[4578]2|67)|5(?:0[5-7]|1[6-9]|[23][78]|48|5[01]))\\d{4}","\\d{7,8}"]
,[,,"(?:6|7[6-8])\\d{6}","\\d{7,8}"]
,"SZ":[,[,,"[027]\\d{7}","\\d{8}"]
,[,,"2(?:2(?:0[07]|[13]7|2[57])|3(?:0[34]|[1278]3|3[23]|[46][34])|(?:40[4-69]|67)|5(?:0[5-7]|1[6-9]|[23][78]|48|5[01]))\\d{4}","\\d{8}"]
,[,,"7[6-8]\\d{6}","\\d{8}"]
,[,,"0800\\d{4}","\\d{8}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"SZ",268,"00",,,,,,,,[[,"(\\d{3})(\\d{4})","$1 $2",["[2-6]"]
,"",""]
,[,"(\\d{4})(\\d{4})","$1 $2",["[027]"]
,"SZ",268,"00",,,,,,,,[[,"(\\d{4})(\\d{4})","$1 $2",["[027]"]
,"",""]
]
,,[,,"NA","NA"]
@ -3836,22 +3858,22 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
,"TJ":[,[,,"[349]\\d{8}","\\d{3,9}"]
,[,,"(?:3(?:1[3-5]|2[245]|31|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}","\\d{3,9}"]
,[,,"9[0-35-9]\\d{7}","\\d{9}"]
,"TJ":[,[,,"[3-59]\\d{8}","\\d{3,9}"]
,[,,"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}","\\d{3,9}"]
,[,,"(?:505|9[0-35-9]\\d)\\d{6}","\\d{9}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"TJ",992,"8~10","8",,,"8",,,,[[,"([349]\\d{2})(\\d{2})(\\d{4})","$1 $2 $3",["[34]7|91[78]"]
,"8$1",""]
,[,"([49]\\d)(\\d{3})(\\d{4})","$1 $2 $3",["4[48]|9(?:19|[0235-9])"]
,"8$1",""]
,"(8) $1",""]
,[,"([459]\\d)(\\d{3})(\\d{4})","$1 $2 $3",["4[48]|5|9(?:19|[0235-9])"]
,"(8) $1",""]
,[,"(331700)(\\d)(\\d{2})","$1 $2 $3",["331","3317","33170","331700"]
,"8$1",""]
,"(8) $1",""]
,[,"(\\d{4})(\\d)(\\d{4})","$1 $2 $3",["3[1-5]","3(?:[1245]|3(?:[02-9]|1[0-589]))"]
,"8$1",""]
,"(8) $1",""]
]
,,[,,"NA","NA"]
,,,[,,"NA","NA"]
@ -3954,15 +3976,15 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,,"868",[,,"NA","NA"]
,[,,"NA","NA"]
]
,"TV":[,[]
,[]
,[]
,"TV":[,[,,"[29]\\d{4,5}","\\d{5,6}"]
,[,,"2[02-9]\\d{3}","\\d{5}"]
,[,,"90\\d{4}","\\d{6}"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,[,,"NA","NA"]
,"TV",688,"00",,,,,,,1,,,[,,"NA","NA"]
,"TV",688,"00",,,,,,,,,,[,,"NA","NA"]
,,,[,,"NA","NA"]
,[,,"NA","NA"]
]
@ -4041,8 +4063,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
,[,,"NA","NA"]
]
,"US":[,[,,"[2-9]\\d{9}","\\d{7}(?:\\d{3})?"]
,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[4589]|3[149]|4[08]|5[1-46]|6[0279]|7[06]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|47|5[12]|6[01]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[014]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[036]|3[016]|4[16]|5[017]|6[0-29]|78|8[12])|7(?:0[1-46-8]|1[2-9]|2[047]|3[124]|4[07]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[06-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[058]|3[1678]|4[0179]|5[1246]|7[0-3589]|8[059]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?"]
,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[4589]|3[149]|4[08]|5[1-46]|6[0279]|7[06]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|47|5[12]|6[01]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[014]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[036]|3[016]|4[16]|5[017]|6[0-29]|78|8[12])|7(?:0[1-46-8]|1[2-9]|2[047]|3[124]|4[07]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[06-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[058]|3[1678]|4[0179]|5[1246]|7[0-3589]|8[059]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?"]
,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[4589]|3[149]|4[08]|5[1-46]|6[0279]|7[06]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|47|5[12]|6[01]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[036]|3[016]|4[16]|5[017]|6[0-29]|78|8[12])|7(?:0[1-46-8]|1[2-9]|2[047]|3[124]|4[07]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[06-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[1678]|4[0179]|5[1246]|7[0-3589]|8[059]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?"]
,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[4589]|3[149]|4[08]|5[1-46]|6[0279]|7[06]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|47|5[12]|6[01]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[036]|3[016]|4[16]|5[017]|6[0-29]|78|8[12])|7(?:0[1-46-8]|1[2-9]|2[047]|3[124]|4[07]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[06-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[1678]|4[0179]|5[1246]|7[0-3589]|8[059]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?"]
,[,,"8(?:00|55|66|77|88)[2-9]\\d{6}","\\d{10}"]
,[,,"900[2-9]\\d{6}","\\d{10}"]
,[,,"NA","NA"]


+ 14
- 15
javascript/i18n/phonenumbers/phonenumberutil.js View File

@ -427,9 +427,8 @@ i18n.phonenumbers.PhoneNumberUtil.UNIQUE_INTERNATIONAL_PREFIX_ =
*
* @const
* @type {string}
* @private
*/
i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION_ =
i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION =
'-x\u2010-\u2015\u2212\u30FC\uFF0D-\uFF0F \u00A0\u200B\u2060\u3000()' +
'\uFF08\uFF09\uFF3B\uFF3D.\\[\\]/~\u2053\u223C\uFF5E';
@ -480,7 +479,7 @@ i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN_ =
* @private
*/
i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_ =
new RegExp('[' + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION_ +
new RegExp('[' + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION +
']+', 'g');
@ -569,9 +568,9 @@ i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_ =
*/
i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ =
'[' + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + ']*(?:[' +
i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION_ + ']*[' +
i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + ']*[' +
i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + ']){3,}[' +
i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION_ +
i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION +
i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ +
i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + ']*';
@ -782,9 +781,9 @@ i18n.phonenumbers.PhoneNumberUtil.ValidationResult = {
/**
* Attempts to extract a possible number from the string passed in. This
* currently strips all leading characters that could not be used to start a
* phone number. Characters that can be used to start a phone number are defined
* in the VALID_START_CHAR_PATTERN. If none of these characters are found in the
* currently strips all leading characters that cannot be used to start a phone
* number. Characters that can be used to start a phone number are defined in
* the VALID_START_CHAR_PATTERN. If none of these characters are found in the
* number passed in, an empty string is returned. This function also attempts to
* strip off any alternative extensions or endings if two or more are present,
* such as in the case of: (530) 583-6985 x302/x2303. The second extension here
@ -1356,7 +1355,7 @@ i18n.phonenumbers.PhoneNumberUtil.prototype.
/**
* Formats a phone number for out-of-country dialing purposes. If no
* regionCallingFrom is supplied, we format the number in its INTERNATIONAL
* format. If the regionCallingFrom is the same as the region where the
* format. If the country calling code is the same as the region where the
* number is from, then NATIONAL formatting will be applied.
*
* <p>If the number itself has a country calling code of zero or an otherwise
@ -2439,12 +2438,12 @@ i18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberWithReason =
* denotes the region that we are expecting the number to be dialed from.
* Note this is different from the region where the number belongs.
* For example, the number +1 650 253 0000 is a number that belongs to US.
* When written in this form, it could be dialed from any region. When it
* is written as 00 1 650 253 0000, it could be dialed from any region
* which uses an international dialling prefix of 00. When it is written as
* 650 253 0000, it could only be dialed from within the US, and when
* written as 253 0000, it could only be dialed from within a smaller area
* in the US (Mountain View, CA, to be more specific).
* When written in this form, it can be dialed from any region. When it is
* written as 00 1 650 253 0000, it can be dialed from any region which uses
* an international dialling prefix of 00. When it is written as
* 650 253 0000, it can only be dialed from within the US, and when written
* as 253 0000, it can only be dialed from within a smaller area in the US
* (Mountain View, CA, to be more specific).
* @return {boolean} true if the number is possible.
*/
i18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberString =


Loading…
Cancel
Save