our
$VERSION
= 1.20250323211814;
my
$formatters
= [
{
'format'
=>
'$1'
,
'intl_format'
=>
'NA'
,
'leading_digits'
=> '
0|
1(?:
0[0-35-7]|
1[02-5]|
2[015]|
3[47]|
4[478]
)|
911
',
'pattern'
=>
'(\\d{3})'
},
{
'format'
=>
'$1-$2'
,
'intl_format'
=>
'NA'
,
'leading_digits'
=>
'[1-9]'
,
'pattern'
=>
'(\\d{2})(\\d{4})'
},
{
'format'
=>
'$1-$2'
,
'intl_format'
=>
'NA'
,
'leading_digits'
=>
'[2-9]'
,
'pattern'
=>
'(\\d{3})(\\d{4})'
},
{
'format'
=>
'$1-$2'
,
'intl_format'
=>
'NA'
,
'leading_digits'
=>
'[1-8]'
,
'pattern'
=>
'(\\d{4})(\\d{4})'
},
{
'format'
=>
'$1 $2-$3'
,
'leading_digits'
=> '
2(?:
[23]02|
6(?:
[25]|
4(?:
64|
[78]
)
)|
9(?:
[02356]|
4(?:
[0268]|
5[2-6]
)|
72|
8[23]
)
)|
3(?:
3[28]|
4(?:
[04679]|
3(?:
5(?:
4[0-25689]|
[56]
)|
[78]
)|
58|
8[2379]
)|
5(?:
[2467]|
3[237]|
8(?:
[23]|
4(?:
[45]|
60
)|
5(?:
4[0-39]|
5|
64
)
)
)|
7[1-578]|
8(?:
[2469]|
3[278]|
54(?:
4|
5[13-7]|
6[89]
)|
86[3-6]
)
)|
2(?:
2[24-9]|
3[1-59]|
47
)|
38(?:
[58][78]|
7[378]
)|
3(?:
454|
85[56]
)[46]|
3(?:
4(?:
36|
5[56]
)|
8(?:
[38]5|
76
)
)[4-6]
',
'national_rule'
=>
'0$1'
,
'pattern'
=>
'(\\d{4})(\\d{2})(\\d{4})'
},
{
'format'
=>
'$1 $2-$3'
,
'leading_digits'
=>
'1'
,
'national_rule'
=>
'0$1'
,
'pattern'
=>
'(\\d{2})(\\d{4})(\\d{4})'
},
{
'format'
=>
'$1-$2-$3'
,
'leading_digits'
=>
'[68]'
,
'national_rule'
=>
'0$1'
,
'pattern'
=>
'(\\d{3})(\\d{3})(\\d{4})'
},
{
'format'
=>
'$1 $2-$3'
,
'leading_digits'
=>
'[23]'
,
'national_rule'
=>
'0$1'
,
'pattern'
=>
'(\\d{3})(\\d{3})(\\d{4})'
},
{
'format'
=>
'$2 15-$3-$4'
,
'intl_format'
=>
'$1 $2 $3-$4'
,
'leading_digits'
=> '
9(?:
2(?:
[23]02|
6(?:
[25]|
4(?:
64|
[78]
)
)|
9(?:
[02356]|
4(?:
[0268]|
5[2-6]
)|
72|
8[23]
)
)|
3(?:
3[28]|
4(?:
[04679]|
3(?:
5(?:
4[0-25689]|
[56]
)|
[78]
)|
5(?:
4[46]|
8
)|
8[2379]
)|
5(?:
[2467]|
3[237]|
8(?:
[23]|
4(?:
[45]|
60
)|
5(?:
4[0-39]|
5|
64
)
)
)|
7[1-578]|
8(?:
[2469]|
3[278]|
5(?:
4(?:
4|
5[13-7]|
6[89]
)|
[56][46]|
[78]
)|
7[378]|
8(?:
6[3-6]|
[78]
)
)
)
)|
92(?:
2[24-9]|
3[1-59]|
47
)|
93(?:
4(?:
36|
5[56]
)|
8(?:
[38]5|
76
)
)[4-6]
',
'national_rule'
=>
'0$1'
,
'pattern'
=>
'(\\d)(\\d{4})(\\d{2})(\\d{4})'
},
{
'format'
=>
'$2 15-$3-$4'
,
'intl_format'
=>
'$1 $2 $3-$4'
,
'leading_digits'
=>
'91'
,
'national_rule'
=>
'0$1'
,
'pattern'
=>
'(\\d)(\\d{2})(\\d{4})(\\d{4})'
},
{
'format'
=>
'$1-$2-$3'
,
'leading_digits'
=>
'8'
,
'national_rule'
=>
'0$1'
,
'pattern'
=>
'(\\d{3})(\\d{3})(\\d{5})'
},
{
'format'
=>
'$2 15-$3-$4'
,
'intl_format'
=>
'$1 $2 $3-$4'
,
'leading_digits'
=>
'9'
,
'national_rule'
=>
'0$1'
,
'pattern'
=>
'(\\d)(\\d{3})(\\d{3})(\\d{4})'
}
];
my
$validators
= {
'fixed_line'
=> '
3(?:
7(?:
1[15]|
81
)|
8(?:
21|
4[16]|
69|
9[12]
)
)[46]\\d{5}|
(?:
2(?:
2(?:
2[59]|
44|
52
)|
3(?:
26|
44
)|
47[35]|
9(?:
[07]2|
2[26]|
34|
46
)
)|
3327
)[45]\\d{5}|
(?:
2(?:
657|
9(?:
54|
66
)
)|
3(?:
48[27]|
7(?:
55|
77
)|
8(?:
65|
78
)
)
)[2-8]\\d{5}|
(?:
2(?:
284|
3(?:
02|
23
)|
477|
622|
920
)|
3(?:
4(?:
46|
89|
92
)|
541
)
)[2-7]\\d{5}|
(?:
(?:
11[1-8]|
670
)\\d|
2(?:
2(?:
0[45]|
1[2-6]|
3[3-6]
)|
3(?:
[06]4|
7[45]
)|
494|
6(?:
04|
1[2-8]|
[36][45]|
4[3-6]
)|
80[45]|
9(?:
[17][4-6]|
[48][45]|
9[3-6]
)
)|
3(?:
364|
4(?:
1[2-8]|
[25][4-6]|
3[3-6]|
84
)|
5(?:
1[2-9]|
[38][4-6]
)|
6(?:
2[45]|
44
)|
7[069][45]|
8(?:
0[45]|
1[2-7]|
3[4-6]|
5[3-6]|
7[2-6]|
8[3-68]
)
)
)\\d{6}|
(?:
2(?:
2(?:
62|
81
)|
320|
9(?:
42|
83
)
)|
3(?:
329|
4(?:
62|
7[16]
)|
5(?:
43|
64
)|
7(?:
18|
5[17]
)
)
)[2-6]\\d{5}|
2(?:
2(?:
21|
4[23]|
6[145]|
7[1-4]|
8[356]|
9[267]
)|
3(?:
16|
3[13-8]|
43|
5[346-8]|
9[3-5]
)|
6(?:
2[46]|
4[78]|
5[1568]
)|
9(?:
03|
2[1457-9]|
3[1356]|
4[08]|
[56][23]|
82
)
)4\\d{5}|
(?:
2(?:
257|
3(?:
24|
46|
92
)|
9(?:
01|
23|
64
)
)|
3(?:
4(?:
42|
64
)|
5(?:
25|
37|
4[47]|
71
)|
7(?:
35|
72
)|
825
)
)[3-6]\\d{5}|
(?:
2(?:
2(?:
02|
2[3467]|
4[156]|
5[45]|
6[6-8]|
91
)|
3(?:
1[47]|
25|
[45][25]|
96
)|
47[48]|
625|
932
)|
3(?:
38[2578]|
4(?:
0[0-24-9]|
3[78]|
4[457]|
58|
6[035-9]|
72|
83|
9[136-8]
)|
5(?:
2[124]|
[368][23]|
4[2689]|
7[2-6]
)|
7(?:
16|
2[15]|
3[14]|
4[13]|
5[468]|
7[3-5]|
8[26]
)|
8(?:
2[67]|
3[278]|
4[3-5]|
5[78]|
6[1-378]|
[78]7|
94
)
)
)[4-6]\\d{5}
',
'geographic'
=> '
3(?:
7(?:
1[15]|
81
)|
8(?:
21|
4[16]|
69|
9[12]
)
)[46]\\d{5}|
(?:
2(?:
2(?:
2[59]|
44|
52
)|
3(?:
26|
44
)|
47[35]|
9(?:
[07]2|
2[26]|
34|
46
)
)|
3327
)[45]\\d{5}|
(?:
2(?:
657|
9(?:
54|
66
)
)|
3(?:
48[27]|
7(?:
55|
77
)|
8(?:
65|
78
)
)
)[2-8]\\d{5}|
(?:
2(?:
284|
3(?:
02|
23
)|
477|
622|
920
)|
3(?:
4(?:
46|
89|
92
)|
541
)
)[2-7]\\d{5}|
(?:
(?:
11[1-8]|
670
)\\d|
2(?:
2(?:
0[45]|
1[2-6]|
3[3-6]
)|
3(?:
[06]4|
7[45]
)|
494|
6(?:
04|
1[2-8]|
[36][45]|
4[3-6]
)|
80[45]|
9(?:
[17][4-6]|
[48][45]|
9[3-6]
)
)|
3(?:
364|
4(?:
1[2-8]|
[25][4-6]|
3[3-6]|
84
)|
5(?:
1[2-9]|
[38][4-6]
)|
6(?:
2[45]|
44
)|
7[069][45]|
8(?:
0[45]|
1[2-7]|
3[4-6]|
5[3-6]|
7[2-6]|
8[3-68]
)
)
)\\d{6}|
(?:
2(?:
2(?:
62|
81
)|
320|
9(?:
42|
83
)
)|
3(?:
329|
4(?:
62|
7[16]
)|
5(?:
43|
64
)|
7(?:
18|
5[17]
)
)
)[2-6]\\d{5}|
2(?:
2(?:
21|
4[23]|
6[145]|
7[1-4]|
8[356]|
9[267]
)|
3(?:
16|
3[13-8]|
43|
5[346-8]|
9[3-5]
)|
6(?:
2[46]|
4[78]|
5[1568]
)|
9(?:
03|
2[1457-9]|
3[1356]|
4[08]|
[56][23]|
82
)
)4\\d{5}|
(?:
2(?:
257|
3(?:
24|
46|
92
)|
9(?:
01|
23|
64
)
)|
3(?:
4(?:
42|
64
)|
5(?:
25|
37|
4[47]|
71
)|
7(?:
35|
72
)|
825
)
)[3-6]\\d{5}|
(?:
2(?:
2(?:
02|
2[3467]|
4[156]|
5[45]|
6[6-8]|
91
)|
3(?:
1[47]|
25|
[45][25]|
96
)|
47[48]|
625|
932
)|
3(?:
38[2578]|
4(?:
0[0-24-9]|
3[78]|
4[457]|
58|
6[035-9]|
72|
83|
9[136-8]
)|
5(?:
2[124]|
[368][23]|
4[2689]|
7[2-6]
)|
7(?:
16|
2[15]|
3[14]|
4[13]|
5[468]|
7[3-5]|
8[26]
)|
8(?:
2[67]|
3[278]|
4[3-5]|
5[78]|
6[1-378]|
[78]7|
94
)
)
)[4-6]\\d{5}
',
'mobile'
=> '
93(?:
7(?:
1[15]|
81
)|
8(?:
21|
4[16]|
69|
9[12]
)
)[46]\\d{5}|
9(?:
2(?:
2(?:
2[59]|
44|
52
)|
3(?:
26|
44
)|
47[35]|
9(?:
[07]2|
2[26]|
34|
46
)
)|
3327
)[45]\\d{5}|
9(?:
2(?:
657|
9(?:
54|
66
)
)|
3(?:
48[27]|
7(?:
55|
77
)|
8(?:
65|
78
)
)
)[2-8]\\d{5}|
9(?:
2(?:
284|
3(?:
02|
23
)|
477|
622|
920
)|
3(?:
4(?:
46|
89|
92
)|
541
)
)[2-7]\\d{5}|
(?:
675\\d|
9(?:
11[1-8]\\d|
2(?:
2(?:
0[45]|
1[2-6]|
3[3-6]
)|
3(?:
[06]4|
7[45]
)|
494|
6(?:
04|
1[2-8]|
[36][45]|
4[3-6]
)|
80[45]|
9(?:
[17][4-6]|
[48][45]|
9[3-6]
)
)|
3(?:
364|
4(?:
1[2-8]|
[25][4-6]|
3[3-6]|
84
)|
5(?:
1[2-9]|
[38][4-6]
)|
6(?:
2[45]|
44
)|
7[069][45]|
8(?:
0[45]|
1[2-7]|
3[4-6]|
5[3-6]|
7[2-6]|
8[3-68]
)
)
)
)\\d{6}|
9(?:
2(?:
2(?:
62|
81
)|
320|
9(?:
42|
83
)
)|
3(?:
329|
4(?:
62|
7[16]
)|
5(?:
43|
64
)|
7(?:
18|
5[17]
)
)
)[2-6]\\d{5}|
92(?:
2(?:
21|
4[23]|
6[145]|
7[1-4]|
8[356]|
9[267]
)|
3(?:
16|
3[13-8]|
43|
5[346-8]|
9[3-5]
)|
6(?:
2[46]|
4[78]|
5[1568]
)|
9(?:
03|
2[1457-9]|
3[1356]|
4[08]|
[56][23]|
82
)
)4\\d{5}|
9(?:
2(?:
257|
3(?:
24|
46|
92
)|
9(?:
01|
23|
64
)
)|
3(?:
4(?:
42|
64
)|
5(?:
25|
37|
4[47]|
71
)|
7(?:
35|
72
)|
825
)
)[3-6]\\d{5}|
9(?:
2(?:
2(?:
02|
2[3467]|
4[156]|
5[45]|
6[6-8]|
91
)|
3(?:
1[47]|
25|
[45][25]|
96
)|
47[48]|
625|
932
)|
3(?:
38[2578]|
4(?:
0[0-24-9]|
3[78]|
4[457]|
58|
6[035-9]|
72|
83|
9[136-8]
)|
5(?:
2[124]|
[368][23]|
4[2689]|
7[2-6]
)|
7(?:
16|
2[15]|
3[14]|
4[13]|
5[468]|
7[3-5]|
8[26]
)|
8(?:
2[67]|
3[278]|
4[3-5]|
5[78]|
6[1-378]|
[78]7|
94
)
)
)[4-6]\\d{5}
',
'pager'
=>
''
,
'personal_number'
=>
''
,
'specialrate'
=>
'(60[04579]\\d{7})|(810\\d{7})'
,
'toll_free'
=>
'800\\d{7,8}'
,
'voip'
=>
''
};
my
%areanames
= ();
$areanames
{en} = {
"543546"
,
"Santa\ Rosa\ de\ Calamuchita\,\ Córdoba"
,
"542931"
,
"Río\ Colorado\,\ Río\ Negro"
,
"543536"
,
"Villa\ María\,\ Córdoba"
,
"543892"
,
"Amaicha\ del\ Valle\,\ Tucumán"
,
"543549"
,
"Cruz\ del\ Eje\,\ Córdoba"
,
"543883"
,
"San\ Salvador\ de\ Jujuy\,\ Jujuy"
,
"542241"
,
"Chascomús\,\ Buenos\ Aires"
,
"543482"
,
"Reconquista\,\ Santa\ Fe"
,
"543493"
,
"Sunchales\,\ Santa\ Fe"
,
"543786"
,
"Ituzaingó\,\ Corrientes"
,
"542656"
,
"Merlo\,\ San\ Luis"
,
"542934"
,
"San\ Antonio\ Oeste\,\ Río\ Negro"
,
"542944"
,
"San\ Carlos\ de\ Bariloche\,\ Río\ Negro"
,
"5435412"
,
"Villa\ Carlos\ Paz\,\ Córdoba"
,
"542478"
,
"Arrecifes\,\ Buenos\ Aires"
,
"543855"
,
"Suncho\ Corral\,\ Santiago\ del\ Estero"
,
"542244"
,
"Las\ Flores\,\ Buenos\ Aires"
,
"543438"
,
"Bovril\,\ Entre\ Ríos"
,
"54298240"
,
"Orense\,\ Buenos\ Aires"
,
"542952"
,
"General\ Acha\,\ La\ Pampa"
,
"543772"
,
"Paso\ de\ los\ Libres\,\ Corrientes"
,
"543466"
,
"Barrancas\,\ Santa\ Fe"
,
"543447"
,
"Colón\,\ Entre\ Ríos"
,
"543469"
,
"Acebal\,\ Santa\ Fe"
,
"542283"
,
"Tapalqué\,\ Buenos\ Aires"
,
"543437"
,
"La\ Paz\,\ Entre\ Ríos"
,
"542292"
,
"Benito\ Juárez\,\ Buenos\ Aires"
,
"543476"
,
"San\ Lorenzo\,\ Santa\ Fe"
,
"542302"
,
"General\ Pico\,\ La\ Pampa"
,
"543841"
,
"Monte\ Quemado\,\ Santiago\ del\ Estero"
,
"5438885"
,
"San\ Pedro\ de\ Jujuy\,\ Jujuy"
,
"542252"
,
"San\ Clemente\ del\ Tuyú\,\ Buenos\ Aires"
,
"542325"
,
"San\ Andrés\ de\ Giles\,\ Buenos\ Aires"
,
"542983"
,
"Tres\ Arroyos\,\ Buenos\ Aires"
,
"542477"
,
"Pergamino\,\ Buenos\ Aires"
,
"54298242"
,
"Orense\,\ Buenos\ Aires"
,
"54260"
,
"San\ Rafael\,\ Mendoza"
,
"542255"
,
"Villa\ Gesell\,\ Buenos\ Aires"
,
"543834"
,
"San\ Fernando\ del\ Valle\ de\ Catamarca\,\ Catamarca"
,
"543844"
,
"Añatuya\,\ Santiago\ del\ Estero"
,
"543721"
,
"Charadai\,\ Chaco"
,
"543775"
,
"Monte\ Caseros\,\ Corrientes"
,
"543524"
,
"Villa\ del\ Totoral\,\ Córdoba"
,
"542356"
,
"General\ Pinto\,\ Buenos\ Aires"
,
"542243"
,
"General\ Belgrano\,\ Buenos\ Aires"
,
"543857"
,
"Bandera\,\ Santiago\ del\ Estero"
,
"543487"
,
"Zárate\,\ Buenos\ Aires"
,
"543491"
,
"Ceres\,\ Santa\ Fe"
,
"543562"
,
"Morteros\,\ Córdoba"
,
"542940"
,
"Ingeniero\ Jacobacci\,\ Río\ Negro"
,
"543572"
,
"Río\ Segundo\,\ Córdoba"
,
"542396"
,
"Pehuajó\,\ Buenos\ Aires"
,
"542933"
,
"Huanguelén\,\ Buenos\ Aires"
,
"54381"
,
"San\ Miguel\ de\ Tucumán\,\ Tucumán"
,
"543575"
,
"La\ Puerta\,\ Córdoba"
,
"542926"
,
"Coronel\ Suárez\,\ Buenos\ Aires"
,
"543521"
,
"Deán\ Funes\,\ Córdoba"
,
"542316"
,
"Daireaux\,\ Buenos\ Aires"
,
"542929"
,
"Guaminí\,\ Buenos\ Aires"
,
"5435414"
,
"Villa\ Carlos\ Paz\,\ Córdoba"
,
"543884"
,
"San\ Salvador\ de\ Jujuy\,\ Jujuy"
,
"543454"
,
"Federal\,\ Entre\ Ríos"
,
"542226"
,
"Cañuelas\,\ Buenos\ Aires"
,
"542229"
,
"Juan\ María\ Gutiérrez\/El\ Pato\,\ Buenos\ Aires"
,
"542622"
,
"Tunuyán\,\ Mendoza"
,
"543586"
,
"Río\ Cuarto\,\ Córdoba"
,
"542257"
,
"Mar\ de\ Ajó\,\ Buenos\ Aires"
,
"543843"
,
"Quimilí\,\ Santiago\ del\ Estero"
,
"54299"
,
"Neuquén\,\ Neuquén"
,
"543442"
,
"Concepción\ del\ Uruguay\,\ Entre\ Ríos"
,
"542281"
,
"Azul\,\ Buenos\ Aires"
,
"542297"
,
"Rauch\,\ Buenos\ Aires"
,
"54376"
,
"Posadas\,\ Misiones"
,
"543777"
,
"Goya\,\ Corrientes"
,
"542984"
,
"General\ Roca\,\ Río\ Negro"
,
"54221"
,
"La\ Plata\,\ Buenos\ Aires"
,
"543329"
,
"San\ Pedro\,\ Buenos\ Aires"
,
"543445"
,
"Rosario\ del\ Tala\,\ Entre\ Ríos"
,
"543435"
,
"Nogoyá\,\ Entre\ Ríos"
,
"542284"
,
"Olavarría\,\ Buenos\ Aires"
,
"543858"
,
"Termas\ de\ Río\ Hondo\,\ Santiago\ del\ Estero"
,
"54291"
,
"Bahía\ Blanca\,\ Buenos\ Aires"
,
"543826"
,
"Chamical\,\ La\ Rioja"
,
"542475"
,
"Rojas\,\ Buenos\ Aires"
,
"542625"
,
"General\ Alvear\,\ Mendoza"
,
"542246"
,
"Santa\ Teresita\,\ Buenos\ Aires"
,
"54379"
,
"Corrientes\,\ Corrientes"
,
"542267"
,
"General\ Juan\ Madariaga\,\ Buenos\ Aires"
,
"543781"
,
"Caá\ Catí\,\ Corrientes"
,
"542353"
,
"General\ Arenales\,\ Buenos\ Aires"
,
"542946"
,
"Choele\ Choel\,\ Río\ Negro"
,
"543757"
,
"Puerto\ Iguazú\,\ Misiones"
,
"542936"
,
"Carhué\,\ Buenos\ Aires"
,
"542393"
,
"Salazar\,\ Buenos\ Aires"
,
"542903"
,
"Río\ Mayo\,\ Chubut"
,
"5428"
,
"Trelew\/Rawson\,\ Chubut"
,
"542920"
,
"Viedma\,\ Río\ Negro"
,
"542923"
,
"Pigüé\,\ Buenos\ Aires"
,
"542651"
,
"San\ Francisco\ del\ Monte\ de\ Oro\,\ San\ Luis"
,
"543534"
,
"Villa\ María\,\ Córdoba"
,
"542338"
,
"Victorica\,\ La\ Pampa"
,
"5435413"
,
"Villa\ Carlos\ Paz\,\ Córdoba"
,
"543544"
,
"Villa\ Dolores\,\ Córdoba"
,
"543868"
,
"Cafayate\,\ Salta"
,
"542223"
,
"Brandsen\,\ Buenos\ Aires"
,
"543878"
,
"Orán\,\ Salta"
,
"543846"
,
"Tintina\,\ Santiago\ del\ Estero"
,
"543836"
,
"Andalgalá\,\ Catamarca"
,
"543877"
,
"Joaquín\ Víctor\ González\,\ Salta"
,
"542337"
,
"América\/Rivadavia\,\ Buenos\ Aires"
,
"543583"
,
"Vicuña\ Mackenna\,\ Córdoba"
,
"542645"
,
"San\ Juan\,\ San\ Juan"
,
"543718"
,
"Clorinda\,\ Formosa"
,
"543867"
,
"Tafí\ del\ Valle\,\ Tucumán"
,
"543743"
,
"Puerto\ Rico\,\ Misiones"
,
"543402"
,
"Arroyo\ Seco\,\ Santa\ Fe"
,
"54336"
,
"San\ Nicolás\,\ Buenos\ Aires"
,
"5435416"
,
"Villa\ Carlos\ Paz\,\ Córdoba"
,
"543471"
,
"Cañada\ de\ Gómez\,\ Santa\ Fe"
,
"543758"
,
"Apóstoles\,\ Misiones"
,
"543405"
,
"San\ Javier\,\ Santa\ Fe"
,
"543464"
,
"Casilda\,\ Santa\ Fe"
,
"542268"
,
"Maipú\,\ Buenos\ Aires"
,
"542901"
,
"Ushuaia\,\ Tierra\ del\ Fuego"
,
"5435417"
,
"Cosquin\/Córdoba"
,
"543456"
,
"Chajarí\,\ Entre\ Ríos"
,
"542224"
,
"Glew\/Guernica\,\ Buenos\ Aires"
,
"543886"
,
"Libertador\ General\ San\ Martín\,\ Jujuy"
,
"542962"
,
"Puerto\ San\ Julián\,\ Santa\ Cruz"
,
"54249"
,
"Tandil\,\ Buenos\ Aires"
,
"543543"
,
"Córdoba\ \(Argüello\)\,\ Córdoba"
,
"543533"
,
"Las\ Varillas\,\ Córdoba"
,
"542972"
,
"San\ Martín\ de\ los\ Andes\,\ Neuquén"
,
"542262"
,
"Necochea\,\ Buenos\ Aires"
,
"542314"
,
"Bolívar\,\ Buenos\ Aires"
,
"542924"
,
"Darregueira\,\ Buenos\ Aires"
,
"543715"
,
"Las\ Lomitas\,\ Formosa"
,
"542648"
,
"Calingasta\,\ San\ Juan"
,
"542272"
,
"Navarro\,\ Buenos\ Aires"
,
"543496"
,
"Esperanza\,\ Santa\ Fe"
,
"542221"
,
"Magdalena\/Verónica\,\ Buenos\ Aires"
,
"542265"
,
"Coronel\ Vidal\,\ Buenos\ Aires"
,
"542394"
,
"Tres\ Lomas\/Salliqueló\,\ Buenos\ Aires"
,
"543755"
,
"Oberá\,\ Misiones"
,
"542354"
,
"Vedia\,\ Buenos\ Aires"
,
"543408"
,
"San\ Cristóbal\,\ Santa\ Fe"
,
"542921"
,
"Coronel\ Dorrego\,\ Buenos\ Aires"
,
"542975"
,
"Comodoro\ Rivadavia\,\ Chubut"
,
"542204"
,
"Merlo\,\ Buenos\ Aires"
,
"542286"
,
"General\ La\ Madrid\,\ Buenos\ Aires"
,
"543463"
,
"Canals\,\ Córdoba"
,
"543407"
,
"Ramallo\,\ Buenos\ Aires"
,
"543731"
,
"Charata\,\ Chaco"
,
"543460"
,
"Santa\ Teresa\,\ Santa\ Fe"
,
"543741"
,
"Bernardo\ de\ Irigoyen\,\ Misiones"
,
"542342"
,
"Bragado\,\ Buenos\ Aires"
,
"543862"
,
"Trancas\,\ Tucumán"
,
"543872"
,
"Salta\,\ Salta"
,
"54263"
,
"San\ Martín\,\ Mendoza"
,
"54351"
,
"Córdoba\,\ Córdoba"
,
"543875"
,
"Salta\,\ Salta"
,
"543821"
,
"Chepes\,\ La\ Rioja"
,
"542335"
,
"Realicó\/Rancul\ Dept\.\,\ La\ Pampa"
,
"542345"
,
"25\ de\ Mayo\,\ Buenos\ Aires"
,
"542647"
,
"San\ José\ de\ Jáchal\,\ San\ Juan"
,
"543865"
,
"Concepción\,\ Tucumán"
,
"543734"
,
"Machagai\/Presidencia\ de\ la\ Plaza\,\ Chaco"
,
"543584"
,
"La\ Carlota\,\ Córdoba"
,
"54342"
,
"Santa\ Fe\,\ Santa\ Fe"
,
"543869"
,
"Ranchillos\ y\ San\ Miguel\,\ Tucumán"
,
"54237"
,
"Moreno\,\ Buenos\ Aires"
,
"543837"
,
"Tinogasta\,\ Catamarca"
,
"543876"
,
"San\ José\ de\ Metán\,\ Salta"
,
"542336"
,
"Huinca\ Renancó\/Villa\ Huidobro\,\ Córdoba"
,
"54236"
,
"Junín\,\ Buenos\ Aires"
,
"542346"
,
"Chivilcoy\,\ Buenos\ Aires"
,
"54370"
,
"Formosa\,\ Formosa"
,
"543773"
,
"Mercedes\,\ Corrientes"
,
"542953"
,
"Macachín\,\ La\ Pampa"
,
"542285"
,
"Laprida\,\ Buenos\ Aires"
,
"542948"
,
"Chos\ Malal\,\ Neuquén"
,
"542624"
,
"Uspallata\,\ Mendoza"
,
"542474"
,
"Salto\,\ Buenos\ Aires"
,
"542320"
,
"José\ C\.\ Paz\,\ Buenos\ Aires"
,
"542985"
,
"General\ Roca\,\ Río\ Negro"
,
"542323"
,
"Luján\,\ Buenos\ Aires"
,
"543434"
,
"Paraná\,\ Entre\ Ríos"
,
"543444"
,
"Gualeguay\,\ Entre\ Ríos"
,
"543492"
,
"Rafaela\,\ Santa\ Fe"
,
"543382"
,
"Rufino\,\ Santa\ Fe"
,
"543853"
,
"Santiago\ del\ Estero\,\ Santiago\ del\ Estero"
,
"543483"
,
"Vera\,\ Santa\ Fe"
,
"54223"
,
"Mar\ del\ Plata\,\ Buenos\ Aires"
,
"542266"
,
"Balcarce\,\ Buenos\ Aires"
,
"543756"
,
"Santo\ Tomé\,\ Corrientes"
,
"543525"
,
"Jesús\ María\,\ Córdoba"
,
"543571"
,
"Río\ Tercero\,\ Córdoba"
,
"542976"
,
"Comodoro\ Rivadavia\,\ Chubut"
,
"542966"
,
"Río\ Gallegos\,\ Santa\ Cruz"
,
"543455"
,
"Villaguay\,\ Entre\ Ríos"
,
"543885"
,
"La\ Quiaca\,\ Jujuy"
,
"543522"
,
"Villa\ de\ María\,\ Córdoba"
,
"543716"
,
"Comandante\ Fontana\,\ Formosa"
,
"543574"
,
"Río\ Primero\,\ Córdoba"
,
"543385"
,
"Laboulaye\,\ Córdoba"
,
"543838"
,
"Santa\ María\,\ Catamarca"
,
"543564"
,
"San\ Francisco\,\ Córdoba"
,
"542291"
,
"Miramar\,\ Buenos\ Aires"
,
"543409"
,
"Moisés\ Ville\,\ Santa\ Fe"
,
"543433"
,
"Paraná\,\ Entre\ Ríos"
,
"543725"
,
"General\ José\ de\ San\ Martín\,\ Chaco"
,
"543406"
,
"San\ Jorge\,\ Santa\ Fe"
,
"542324"
,
"Mercedes\,\ Buenos\ Aires"
,
"542473"
,
"Colón\,\ Buenos\ Aires"
,
"5438883"
,
"San\ Pedro\ de\ Jujuy\,\ Jujuy"
,
"543832"
,
"Recreo\,\ Catamarca"
,
"543388"
,
"General\ Villegas\,\ Buenos\ Aires"
,
"543845"
,
"Loreto\,\ Santiago\ del\ Estero"
,
"543835"
,
"Andalgalá\,\ Catamarca"
,
"543498"
,
"San\ Justo\,\ Santa\ Fe"
,
"543774"
,
"Curuzú\ Cuatiá\,\ Corrientes"
,
"54266"
,
"San\ Luis\,\ San\ Luis"
,
"542646"
,
"Villa\ San\ Agustín\,\ San\ Juan"
,
"542954"
,
"Santa\ Rosa\,\ La\ Pampa"
,
"54364"
,
"Presidencia\ Roque\ Sáenz\ Peña\,\ Chaco"
,
"543458"
,
"San\ José\ de\ Feliciano\,\ Entre\ Ríos"
,
"542304"
,
"Pilar\,\ Buenos\ Aires"
,
"542254"
,
"Pinamar\,\ Buenos\ Aires"
,
"543887"
,
"Humahuaca\,\ Jujuy"
,
"543563"
,
"Balnearia\,\ Córdoba"
,
"543891"
,
"Graneros\,\ Tucumán"
,
"542932"
,
"Punta\ Alta\,\ Buenos\ Aires"
,
"542942"
,
"Zapala\,\ Neuquén"
,
"543573"
,
"Villa\ del\ Rosario\,\ Córdoba"
,
"543387"
,
"Buchardo\,\ Córdoba"
,
"543497"
,
"Llambi\ Campbell\,\ Santa\ Fe"
,
"542242"
,
"Lezama\,\ Buenos\ Aires"
,
"543894"
,
"Burruyacú\,\ Tucumán"
,
"542245"
,
"Dolores\,\ Buenos\ Aires"
,
"54341"
,
"Rosario\,\ Santa\ Fe"
,
"5438886"
,
"San\ Pedro\ de\ Jujuy\,\ Jujuy"
,
"542945"
,
"Esquel\,\ Chubut"
,
"542935"
,
"Rivera\,\ Buenos\ Aires"
,
"543484"
,
"Escobar\,\ Buenos\ Aires"
,
"543854"
,
"Frías\,\ Santiago\ del\ Estero"
,
"54362"
,
"Resistencia\,\ Chaco"
,
"543400"
,
"Villa\ Constitución\,\ Santa\ Fe"
,
"543467"
,
"Cruz\ Alta\,\ Córdoba\/San\ José\ de\ la\ Esquina\,\ Santa\ Fe"
,
"5438884"
,
"San\ Pedro\ de\ Jujuy\,\ Jujuy"
,
"543446"
,
"Gualeguaychú\,\ Entre\ Ríos"
,
"543436"
,
"Victoria\,\ Entre\ Ríos"
,
"543825"
,
"Chilecito\,\ La\ Rioja"
,
"543861"
,
"Nueva\ Esperanza\,\ Santiago\ del\ Estero"
,
"543582"
,
"Sampacho\,\ Córdoba"
,
"542658"
,
"Buena\ Esperanza\,\ San\ Luis"
,
"542331"
,
"Realicó\,\ La\ Pampa"
,
"542626"
,
"La\ Paz\,\ Mendoza"
,
"542643"
,
"San\ Juan\,\ San\ Juan"
,
"543585"
,
"Adelia\ María\,\ Córdoba"
,
"543874"
,
"Salta\,\ Salta"
,
"543735"
,
"Villa\ Ángela\,\ Chaco"
,
"542344"
,
"Saladillo\,\ Buenos\ Aires"
,
"543548"
,
"La\ Falda\,\ Córdoba"
,
"542334"
,
"Eduardo\ Castex\,\ La\ Pampa"
,
"543576"
,
"Arroyito\,\ Córdoba"
,
"542392"
,
"Trenque\ Lauquen\,\ Buenos\ Aires"
,
"542925"
,
"Villa\ Iris\,\ Buenos\ Aires"
,
"543547"
,
"Alta\ Gracia\,\ Córdoba"
,
"543751"
,
"Eldorado\,\ Misiones"
,
"543537"
,
"Bell\ Ville\,\ Córdoba"
,
"54261"
,
"Mendoza\,\ Mendoza"
,
"542902"
,
"Río\ Turbio\,\ Santa\ Cruz"
,
"542225"
,
"Alejandro\ Korn\,\ Buenos\ Aires"
,
"542271"
,
"San\ Miguel\ del\ Monte\,\ Buenos\ Aires"
,
"542352"
,
"Chacabuco\,\ Buenos\ Aires"
,
"542202"
,
"González\ Catán\/Virrey\ del\ Pino\,\ Buenos\ Aires"
,
"542261"
,
"Lobería\,\ Buenos\ Aires"
,
"542974"
,
"Comodoro\ Rivadavia\,\ Chubut"
,
"543711"
,
"Ingeniero\ Juárez\,\ Formosa"
,
"542205"
,
"Merlo\,\ Buenos\ Aires"
,
"542355"
,
"Lincoln\,\ Buenos\ Aires"
,
"543754"
,
"Leandro\ N\.\ Alem\,\ Misiones"
,
"542657"
,
"Villa\ Mercedes\,\ San\ Luis"
,
"542964"
,
"Río\ Grande\,\ Tierra\ del\ Fuego"
,
"542274"
,
"Carlos\ Spegazzini\,\ Buenos\ Aires"
,
"542395"
,
"Carlos\ Casares\,\ Buenos\ Aires"
,
"542922"
,
"Coronel\ Pringles\,\ Buenos\ Aires"
,
"542264"
,
"La\ Dulce\ \(Nicanor\ Olivera\)\,\ Buenos\ Aires"
,
"543468"
,
"Corral\ de\ Bustos\,\ Córdoba"
,
"541"
,
"Buenos\ Aires"
,
"543863"
,
"Monteros\,\ Tucumán"
,
"542333"
,
"Quemú\ Quemú\,\ La\ Pampa"
,
"542343"
,
"Norberto\ de\ La\ Riestra\,\ Buenos\ Aires"
,
"54380"
,
"La\ Rioja\,\ La\ Rioja"
,
"543873"
,
"Tartagal\,\ Salta"
,
"543472"
,
"Marcos\ Juárez\,\ Córdoba"
,
"542296"
,
"Ayacucho\,\ Buenos\ Aires"
,
"543401"
,
"El\ Trébol\,\ Santa\ Fe"
,
"542928"
,
"Pedro\ Luro\,\ Buenos\ Aires"
,
"542644"
,
"San\ Juan\,\ San\ Juan"
,
"543462"
,
"Venado\ Tuerto\,\ Santa\ Fe"
,
"543465"
,
"Firmat\,\ Santa\ Fe"
,
"543327"
,
"Benavídez\,\ Buenos\ Aires"
,
"543827"
,
"Aimogasta\,\ La\ Rioja"
,
"5429824"
,
"Claromecó\,\ Buenos\ Aires"
,
"542326"
,
"San\ Antonio\ de\ Areco\,\ Buenos\ Aires"
,
"542358"
,
"Los\ Toldos\,\ Buenos\ Aires"
,
"543404"
,
"Las\ Colonias\ Dept\.\,\ Santa\ Fe"
,
"542982497"
,
"San\ Francisco\ de\ Bellocq\,\ Buenos\ Aires"
,
"543782"
,
"Saladas\,\ Corrientes"
,
"542357"
,
"Carlos\ Tejedor\,\ Buenos\ Aires"
,
"543489"
,
"Campana\,\ Buenos\ Aires"
,
"542655"
,
"La\ Toma\,\ San\ Luis"
,
"543856"
,
"Villa\ Ojo\ de\ Agua\,\ Santiago\ del\ Estero"
,
"542273"
,
"Carmen\ de\ Areco\,\ Buenos\ Aires"
,
"542963"
,
"Perito\ Moreno\,\ Santa\ Cruz"
,
"543532"
,
"Oliva\,\ Córdoba"
,
"543542"
,
"Salsacate\,\ Córdoba"
,
"542927"
,
"Médanos\,\ Buenos\ Aires"
,
"542317"
,
"9\ de\ Julio\,\ Buenos\ Aires"
,
"543535"
,
"Villa\ María\,\ Córdoba"
,
"542227"
,
"Lobos\,\ Buenos\ Aires"
,
"5435415"
,
"Villa\ Carlos\ Paz\,\ Córdoba"
,};
$areanames
{es} = {
"543404"
,
"Dpto\.\ Las\ Colonias\,\ Santa\ Fe"
,
"542335"
,
"Dpto\.\ Realicó\/Rancul\,\ La\ Pampa"
,};
my
$timezones
= {
''
=> [
'America/Buenos_Aires'
]
};
sub
new {
my
$class
=
shift
;
my
$number
=
shift
;
$number
=~ s/(^\+54|\D)//g;
my
$self
=
bless
({
country_code
=>
'54'
,
number
=>
$number
,
formatters
=>
$formatters
,
validators
=>
$validators
,
timezones
=>
$timezones
,
areanames
=> \
%areanames
},
$class
);
return
$self
if
(
$self
->is_valid());
my
$prefix
=
qr/^(?: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[0-24-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(?:[069]|1[1568]|2[15]|3[145]|4[13]|5[14-8]|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)?)/
;
my
@matches
=
$number
=~ /
$prefix
/;
if
(
defined
$matches
[-1]) {
no
warnings
'uninitialized'
;
$number
=~ s/
$prefix
/9$1/;
}
else
{
$number
=~ s/
$prefix
//;
}
$self
=
bless
({
country_code
=>
'54'
,
number
=>
$number
,
formatters
=>
$formatters
,
validators
=>
$validators
,
areanames
=> \
%areanames
},
$class
);
return
$self
->is_valid() ?
$self
:
undef
;
}
1;