phony 1.3.1 → 1.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/countries.rb +369 -368
- data/lib/phony.rb +8 -8
- data/lib/phony/countries/austria.rb +6 -6
- data/lib/phony/countries/belgium.rb +5 -5
- data/lib/phony/countries/chile.rb +4 -3
- data/lib/phony/countries/china.rb +6 -6
- data/lib/phony/countries/egypt.rb +4 -4
- data/lib/phony/countries/germany.rb +5 -5
- data/lib/phony/countries/greece.rb +3 -3
- data/lib/phony/countries/hungary.rb +6 -6
- data/lib/phony/countries/italy.rb +14 -13
- data/lib/phony/countries/malaysia.rb +5 -5
- data/lib/phony/countries/netherlands.rb +5 -3
- data/lib/phony/countries/romania.rb +5 -5
- data/lib/phony/countries/south_korea.rb +5 -5
- data/lib/phony/countries/sweden.rb +4 -2
- data/lib/phony/countries/united_kingdom.rb +10 -8
- data/lib/phony/dsl.rb +40 -30
- data/spec/lib/countries_spec.rb +8 -4
- metadata +2 -6
- data/spec/lib/phony/countries/germany_spec.rb +0 -35
- data/spec/lib/phony/countries/hungary_spec.rb +0 -18
data/lib/countries.rb
CHANGED
@@ -1,5 +1,3 @@
|
|
1
|
-
include Phony::DSL
|
2
|
-
|
3
1
|
# All countries, ordered by country code.
|
4
2
|
#
|
5
3
|
# Available matching/splitting methods:
|
@@ -19,369 +17,372 @@ include Phony::DSL
|
|
19
17
|
# * matched_split: Give a hash of regex => format array, with a :fallback => format option.
|
20
18
|
# (See Norway how it looks.)
|
21
19
|
#
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
country '
|
26
|
-
|
27
|
-
country '
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
country '
|
33
|
-
|
34
|
-
country '
|
35
|
-
country '
|
36
|
-
country '
|
37
|
-
country '
|
38
|
-
country '
|
39
|
-
|
40
|
-
country '
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
country '
|
46
|
-
|
47
|
-
country '
|
48
|
-
country '
|
49
|
-
country '
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
#
|
54
|
-
#
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
country '
|
59
|
-
|
60
|
-
country '
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
country '
|
66
|
-
|
67
|
-
country '
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
country '
|
74
|
-
|
75
|
-
country '
|
76
|
-
|
77
|
-
country '
|
78
|
-
country '
|
79
|
-
country '
|
80
|
-
country '
|
81
|
-
country '
|
82
|
-
|
83
|
-
country '
|
84
|
-
|
85
|
-
country '
|
86
|
-
country '
|
87
|
-
|
88
|
-
country '
|
89
|
-
|
90
|
-
country '
|
91
|
-
country '
|
92
|
-
|
93
|
-
country '
|
94
|
-
|
95
|
-
country '
|
96
|
-
|
97
|
-
country '
|
98
|
-
|
99
|
-
country '
|
100
|
-
country '
|
101
|
-
country '
|
102
|
-
country '
|
103
|
-
country '
|
104
|
-
country '
|
105
|
-
country '
|
106
|
-
country '
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
country '
|
113
|
-
country '
|
114
|
-
country '
|
115
|
-
country '
|
116
|
-
country '
|
117
|
-
country '
|
118
|
-
country '
|
119
|
-
country '
|
120
|
-
|
121
|
-
country '
|
122
|
-
|
123
|
-
country '
|
124
|
-
country '
|
125
|
-
country '
|
126
|
-
country '
|
127
|
-
country '
|
128
|
-
country '
|
129
|
-
country '
|
130
|
-
country '
|
131
|
-
|
132
|
-
country '
|
133
|
-
|
134
|
-
country '
|
135
|
-
country '
|
136
|
-
country '
|
137
|
-
country '
|
138
|
-
country '
|
139
|
-
country '
|
140
|
-
country '
|
141
|
-
country '
|
142
|
-
|
143
|
-
country '
|
144
|
-
|
145
|
-
country '
|
146
|
-
country '
|
147
|
-
country '
|
148
|
-
country '
|
149
|
-
country '
|
150
|
-
country '
|
151
|
-
country '
|
152
|
-
country '
|
153
|
-
|
154
|
-
country '
|
155
|
-
|
156
|
-
country '
|
157
|
-
country '
|
158
|
-
country '
|
159
|
-
country '
|
160
|
-
country '
|
161
|
-
country '
|
162
|
-
country '
|
163
|
-
country '
|
164
|
-
|
165
|
-
country '
|
166
|
-
|
167
|
-
country '
|
168
|
-
country '
|
169
|
-
country '
|
170
|
-
country '
|
171
|
-
country '
|
172
|
-
country '
|
173
|
-
country '
|
174
|
-
country '
|
175
|
-
country '
|
176
|
-
|
177
|
-
country '
|
178
|
-
|
179
|
-
country '
|
180
|
-
country '
|
181
|
-
country '
|
182
|
-
country '
|
183
|
-
country '
|
184
|
-
country '
|
185
|
-
country '
|
186
|
-
|
187
|
-
country '
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
country '
|
194
|
-
country '
|
195
|
-
country '
|
196
|
-
country '
|
197
|
-
country '
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
country '
|
203
|
-
|
204
|
-
country '
|
205
|
-
country '
|
206
|
-
country '
|
207
|
-
country '
|
208
|
-
country '
|
209
|
-
country '
|
210
|
-
country '
|
211
|
-
country '
|
212
|
-
|
213
|
-
country '
|
214
|
-
|
215
|
-
country '
|
216
|
-
country '
|
217
|
-
country '
|
218
|
-
country '
|
219
|
-
country '
|
220
|
-
country '
|
221
|
-
country '
|
222
|
-
country '
|
223
|
-
|
224
|
-
country '
|
225
|
-
|
226
|
-
country '
|
227
|
-
country '
|
228
|
-
country '
|
229
|
-
country '
|
230
|
-
country '
|
231
|
-
country '
|
232
|
-
country '
|
233
|
-
country '
|
234
|
-
|
235
|
-
country '
|
236
|
-
|
237
|
-
country '
|
238
|
-
country '
|
239
|
-
country '
|
240
|
-
country '
|
241
|
-
country '
|
242
|
-
country '
|
243
|
-
country '
|
244
|
-
country '
|
245
|
-
|
246
|
-
country '
|
247
|
-
|
248
|
-
country '
|
249
|
-
country '
|
250
|
-
country '
|
251
|
-
country '
|
252
|
-
country '
|
253
|
-
country '
|
254
|
-
country '
|
255
|
-
country '
|
256
|
-
|
257
|
-
country '
|
258
|
-
|
259
|
-
country '
|
260
|
-
country '
|
261
|
-
country '
|
262
|
-
country '
|
263
|
-
country '
|
264
|
-
country '
|
265
|
-
country '
|
266
|
-
country '
|
267
|
-
|
268
|
-
country '
|
269
|
-
|
270
|
-
country '
|
271
|
-
country '
|
272
|
-
country '
|
273
|
-
country '
|
274
|
-
country '
|
275
|
-
country '
|
276
|
-
country '
|
277
|
-
country '
|
278
|
-
|
279
|
-
country '
|
280
|
-
|
281
|
-
country '
|
282
|
-
country '
|
283
|
-
country '
|
284
|
-
country '
|
285
|
-
country '
|
286
|
-
country '
|
287
|
-
country '
|
288
|
-
country '
|
289
|
-
|
290
|
-
country '
|
291
|
-
|
292
|
-
country '
|
293
|
-
country '
|
294
|
-
country '
|
295
|
-
country '
|
296
|
-
country '
|
297
|
-
country '
|
298
|
-
country '
|
299
|
-
country '
|
300
|
-
|
301
|
-
country '
|
302
|
-
|
303
|
-
country '
|
304
|
-
country '
|
305
|
-
country '
|
306
|
-
country '
|
307
|
-
country '
|
308
|
-
country '
|
309
|
-
country '
|
310
|
-
country '
|
311
|
-
|
312
|
-
country '
|
313
|
-
|
314
|
-
country '
|
315
|
-
country '
|
316
|
-
country '
|
317
|
-
country '
|
318
|
-
country '
|
319
|
-
country '
|
320
|
-
country '
|
321
|
-
country '
|
322
|
-
|
323
|
-
country '
|
324
|
-
|
325
|
-
country '
|
326
|
-
country '
|
327
|
-
country '
|
328
|
-
country '
|
329
|
-
country '
|
330
|
-
country '
|
331
|
-
country '
|
332
|
-
country '
|
333
|
-
|
334
|
-
country '
|
335
|
-
|
336
|
-
country '
|
337
|
-
country '
|
338
|
-
country '
|
339
|
-
country '
|
340
|
-
country '
|
341
|
-
country '
|
342
|
-
country '
|
343
|
-
country '
|
344
|
-
|
345
|
-
country '
|
346
|
-
|
347
|
-
country '
|
348
|
-
country '
|
349
|
-
country '
|
350
|
-
country '
|
351
|
-
country '
|
352
|
-
country '
|
353
|
-
country '
|
354
|
-
country '
|
355
|
-
|
356
|
-
country '
|
357
|
-
|
358
|
-
country '
|
359
|
-
country '
|
360
|
-
country '
|
361
|
-
country '
|
362
|
-
country '
|
363
|
-
country '
|
364
|
-
country '
|
365
|
-
country '
|
366
|
-
|
367
|
-
country '
|
368
|
-
|
369
|
-
country '
|
370
|
-
country '
|
371
|
-
country '
|
372
|
-
country '
|
373
|
-
country '
|
374
|
-
country '
|
375
|
-
country '
|
376
|
-
country '
|
377
|
-
|
378
|
-
country '
|
379
|
-
|
380
|
-
country '
|
381
|
-
country '
|
382
|
-
country '
|
383
|
-
country '
|
384
|
-
country '
|
385
|
-
country '
|
386
|
-
country '
|
387
|
-
country '
|
20
|
+
# Note: The ones that are commented are defined in their special files.
|
21
|
+
#
|
22
|
+
Phony.define do
|
23
|
+
country '0', fixed(1) >> split(10) # Reserved.
|
24
|
+
country '1', fixed(3) >> split(3,4) # USA, Canada, etc.
|
25
|
+
country '7', fixed(3) >> split(3,2,2) # Kazakhstan (Republic of) & Russian Federation
|
26
|
+
|
27
|
+
country '20', one_of('800') >> split(7) | # Egypt
|
28
|
+
one_of('2', '3', :max_length => 2) >> split(8) # Cairo/Giza, Alexandria
|
29
|
+
# :mobile? => /^10|11|12|14|16|17|18|19*$/, :service? => /^800.*$/
|
30
|
+
country '27', fixed(2) >> split(3,4) # South Africa
|
31
|
+
|
32
|
+
# country '30', Phony::Countries::Greece
|
33
|
+
# country '31', Phony::Countries::Netherlands
|
34
|
+
# country '32', Phony::Countries::Belgium
|
35
|
+
country '33', fixed(1) >> split(2,2,2,2) # :service? => /^8.*$/, :mobile? => /^[67].*$/ # France
|
36
|
+
country '34', fixed(2) >> split(3,4) # Spain
|
37
|
+
# country '36', Phony::Countries::Hungary
|
38
|
+
# country '39', Phony::Countries::Italy
|
39
|
+
|
40
|
+
# country '40', Phony::Countries::Romania
|
41
|
+
# :service => %w{800 840 842 844 848}, :mobile => %w{74 76 77 78 79}
|
42
|
+
swiss_service_regex = /^(800|840|842|844|848)\d+$/
|
43
|
+
country '41', match(swiss_service_regex) >> split(3,3) | # Switzerland
|
44
|
+
fixed(2) >> split(3,2,2)
|
45
|
+
# country '43', Phony::Countries::Austria
|
46
|
+
# country '44', Phony::Countries::UnitedKingdom
|
47
|
+
country '45', none >> split(2,2,2,2) # Denmark
|
48
|
+
# country '46', Phony::Countries::Sweden
|
49
|
+
country '47', # Norway
|
50
|
+
none >> matched_split(/^[1].*$/ => [3], /^[489].*$/ => [3,2,3], :fallback => [2,2,2,2])
|
51
|
+
# Poland (Republic of)
|
52
|
+
# Although the NDCs are 2 digits, the representation is 3 digits.
|
53
|
+
# Note: http://wapedia.mobi/en/Telephone_numbers_in_Poland, mobile not yet correct
|
54
|
+
#
|
55
|
+
country '48', fixed(3) >> split(3,3) # Poland
|
56
|
+
# country '49', Phony::Countries::Germany
|
57
|
+
|
58
|
+
country '51', one_of('103', '105') >> split(3,3) | # Peru
|
59
|
+
one_of('1', '9', :max_length => 2) >> split(4,4) # Lima and mobile.
|
60
|
+
country '52', match(/^(0\d{2})\d+$/) >> split(2,2,2,2) | # Mexico
|
61
|
+
match(/^(33|55|81)\d+$/) >> split(2,2,2,2) |
|
62
|
+
match(/^(\d{3})\d+$/) >> split(3,2,2)
|
63
|
+
country '53', match(/^(5\d{3})\d+$/) >> split(4) | # Cuba. Mobile.
|
64
|
+
match(/^(7|21|22|23|4[1-8]|3[1-3])/, :on_fail_take => 3) >> split(7)
|
65
|
+
country '54', fixed(2) >> split(3,2,2) # TODO Argentine Republic
|
66
|
+
brazilian_service = /^(100|128|190|191|192|193|194|197|198|199)\d+$/
|
67
|
+
country '55', match(brazilian_service) >> split(3,3) | # Brazil (Federative Republic of)
|
68
|
+
fixed(2) >> split(4,4)
|
69
|
+
# :service? => brazilian_service, :mobile? => ?
|
70
|
+
# http://en.wikipedia.org/wiki/Telephone_numbers_in_Brazil
|
71
|
+
# country '56', Phony::Countries::Chile
|
72
|
+
country '57', fixed(2) >> split(3,2,2) # TODO Colombia
|
73
|
+
country '58', fixed(3) >> split(7) # Venezuela (Bolivarian Republic of)
|
74
|
+
|
75
|
+
# country '60', Phony::Countries::Malaysia
|
76
|
+
country '61', fixed(1) >> split(4,4) # Australia
|
77
|
+
country '62', fixed(2) >> split(3,2,2) # TODO Indonesia (Republic of)
|
78
|
+
country '63', fixed(2) >> split(3,2,2) # TODO Philippines (Republic of the)
|
79
|
+
country '64', fixed(1) >> split(3,4) # New Zealand
|
80
|
+
country '65', fixed(2) >> split(3,2,2) # TODO Singapore (Republic of)
|
81
|
+
country '66', fixed(2) >> split(3,2,2) # TODO Thailand
|
82
|
+
|
83
|
+
country '81', fixed(2) >> split(3,2,2) # TODO Japan
|
84
|
+
# country '82', Phony::Countries::SouthKorea
|
85
|
+
country '84', fixed(2) >> split(3,2,2) # TODO Viet Nam (Socialist Republic of)
|
86
|
+
# country '86', Phony::Countries::China
|
87
|
+
|
88
|
+
country '90', fixed(3) >> split(3,4) # Turkey. Wiki says 7, but the examples say 3, 4.
|
89
|
+
country '91', fixed(2) >> split(3,2,2) # TODO India (Republic of)
|
90
|
+
country '92', fixed(2) >> split(3,2,2) # TODO Pakistan (Islamic Republic of), http://en.wikipedia.org/wiki/Telephone_numbers_in_Pakistan, NDC 2-5
|
91
|
+
country '93', fixed(2) >> split(7) # Afghanistan. Note: the document says 6, but the examples use 7. http://www.wtng.info/wtng-93-af.html
|
92
|
+
|
93
|
+
country '94', fixed(2) >> split(3,2,2) # TODO Sri Lanka (Democratic Socialist Republic of)
|
94
|
+
country '95', fixed(2) >> split(3,2,2) # TODO Myanmar (Union of)
|
95
|
+
country '98', fixed(2) >> split(3,2,2) # TODO Iran (Islamic Republic of)
|
96
|
+
|
97
|
+
country '210', fixed(2) >> split(3,2,2) # -
|
98
|
+
country '211', fixed(2) >> split(3,2,2) # -
|
99
|
+
country '212', fixed(2) >> split(3,2,2) # Morocco
|
100
|
+
country '213', fixed(2) >> split(3,4) # Algeria
|
101
|
+
country '214', fixed(2) >> split(3,2,2) # -
|
102
|
+
country '215', fixed(2) >> split(3,2,2) # -
|
103
|
+
country '216', fixed(1) >> split(3,4) # Tunisia
|
104
|
+
country '217', fixed(2) >> split(3,2,2) # -
|
105
|
+
country '218', fixed(2) >> split(3,2,2) # Lybia
|
106
|
+
country '219', fixed(2) >> split(3,2,2) # -
|
107
|
+
|
108
|
+
# TODO From here on.
|
109
|
+
|
110
|
+
country '220', fixed(2) >> split(3,2,2) # Gambia
|
111
|
+
country '221', fixed(2) >> split(3,2,2) # Senegal
|
112
|
+
country '222', fixed(2) >> split(3,2,2) # Mauritania
|
113
|
+
country '223', fixed(2) >> split(3,2,2) # Mali
|
114
|
+
country '224', fixed(2) >> split(3,2,2) # Guinea
|
115
|
+
country '225', fixed(2) >> split(3,2,2) # Côte d'Ivoire
|
116
|
+
country '226', fixed(2) >> split(3,2,2) # Burkina Faso
|
117
|
+
country '227', fixed(2) >> split(3,2,2) # Niger
|
118
|
+
country '228', fixed(2) >> split(3,2,2) # Togolese Republic
|
119
|
+
country '229', fixed(2) >> split(3,2,2) # Benin
|
120
|
+
|
121
|
+
country '230', fixed(2) >> split(3,2,2) # Mauritius
|
122
|
+
country '231', fixed(2) >> split(3,2,2) # Liberia
|
123
|
+
country '232', fixed(2) >> split(3,2,2) # Sierra Leone
|
124
|
+
country '233', fixed(2) >> split(3,2,2) # Ghana
|
125
|
+
country '234', fixed(2) >> split(3,2,2) # Nigeria
|
126
|
+
country '235', fixed(2) >> split(3,2,2) # Chad
|
127
|
+
country '236', fixed(2) >> split(3,2,2) # Central African Republic
|
128
|
+
country '237', fixed(2) >> split(3,2,2) # Cameroon
|
129
|
+
country '238', fixed(2) >> split(3,2,2) # Cape Verde
|
130
|
+
country '239', fixed(2) >> split(3,2,2) # Sao Tome and Principe
|
131
|
+
|
132
|
+
country '240', fixed(2) >> split(3,2,2) # Equatorial Guinea
|
133
|
+
country '241', fixed(2) >> split(3,2,2) # Gabonese Republic
|
134
|
+
country '242', fixed(2) >> split(3,2,2) # Congo
|
135
|
+
country '243', fixed(2) >> split(3,2,2) # Democratic Republic of the Congo
|
136
|
+
country '244', fixed(2) >> split(3,2,2) # Angola
|
137
|
+
country '245', fixed(2) >> split(3,2,2) # Guinea-Bissau
|
138
|
+
country '246', fixed(2) >> split(3,2,2) # Diego Garcia
|
139
|
+
country '247', fixed(2) >> split(3,2,2) # Ascension
|
140
|
+
country '248', fixed(2) >> split(3,2,2) # Seychelles
|
141
|
+
country '249', fixed(2) >> split(3,2,2) # Sudan
|
142
|
+
|
143
|
+
country '250', fixed(2) >> split(3,2,2) # Rwanda
|
144
|
+
country '251', fixed(2) >> split(3,2,2) # Ethiopia
|
145
|
+
country '252', fixed(2) >> split(3,2,2) # Somali Democratic Republic
|
146
|
+
country '253', fixed(2) >> split(3,2,2) # Djibouti
|
147
|
+
country '254', fixed(2) >> split(3,2,2) # Kenya
|
148
|
+
country '255', fixed(2) >> split(3,2,2) # Tanzania
|
149
|
+
country '256', fixed(2) >> split(3,2,2) # Uganda
|
150
|
+
country '257', fixed(2) >> split(3,2,2) # Burundi
|
151
|
+
country '258', fixed(2) >> split(3,2,2) # Mozambique
|
152
|
+
country '259', fixed(2) >> split(3,2,2) # -
|
153
|
+
|
154
|
+
country '260', fixed(2) >> split(3,2,2) # Zambia
|
155
|
+
country '261', fixed(2) >> split(3,2,2) # Madagascar
|
156
|
+
country '262', fixed(3) >> split(3,2,2) # Reunion / Mayotte (new)
|
157
|
+
country '263', fixed(2) >> split(3,2,2) # Zimbabwe
|
158
|
+
country '264', fixed(2) >> split(3,2,2) # Namibia
|
159
|
+
country '265', fixed(2) >> split(3,2,2) # Malawi
|
160
|
+
country '266', fixed(2) >> split(3,2,2) # Lesotho
|
161
|
+
country '267', fixed(2) >> split(3,2,2) # Botswana
|
162
|
+
country '268', fixed(2) >> split(3,2,2) # Swaziland
|
163
|
+
country '269', fixed(2) >> split(3,2,2) # Comoros
|
164
|
+
|
165
|
+
country '280', fixed(2) >> split(3,2,2) # -
|
166
|
+
country '281', fixed(2) >> split(3,2,2) # -
|
167
|
+
country '282', fixed(2) >> split(3,2,2) # -
|
168
|
+
country '283', fixed(2) >> split(3,2,2) # -
|
169
|
+
country '284', fixed(2) >> split(3,2,2) # -
|
170
|
+
country '285', fixed(2) >> split(3,2,2) # -
|
171
|
+
country '286', fixed(2) >> split(3,2,2) # -
|
172
|
+
country '287', fixed(2) >> split(3,2,2) # -
|
173
|
+
country '288', fixed(2) >> split(3,2,2) # -
|
174
|
+
country '289', fixed(2) >> split(3,2,2) # -
|
175
|
+
country '290', fixed(2) >> split(3,2,2) # Saint Helena
|
176
|
+
|
177
|
+
country '291', fixed(2) >> split(3,2,2) # Eritrea
|
178
|
+
country '292', fixed(2) >> split(3,2,2) # -
|
179
|
+
country '293', fixed(2) >> split(3,2,2) # -
|
180
|
+
country '294', fixed(2) >> split(3,2,2) # -
|
181
|
+
country '295', fixed(2) >> split(3,2,2) # -
|
182
|
+
country '296', fixed(2) >> split(3,2,2) # -
|
183
|
+
country '297', fixed(2) >> split(3,2,2) # Aruba
|
184
|
+
country '298', fixed(2) >> split(3,2,2) # Faroe Islands
|
185
|
+
country '299', fixed(2) >> split(3,2,2) # Greenland
|
186
|
+
|
187
|
+
country '350', fixed(2) >> split(3,2,2) # Gibraltar
|
188
|
+
country '351', one_of('700', '800') >> split(3,3) | # Portugal
|
189
|
+
match(/^(9\d)\d+$/) >> split(3,4) | # mobile
|
190
|
+
one_of('21', '22', :max_length => 3) >> split(3,4) # Lisboa & Porto
|
191
|
+
country '352', fixed(2) >> split(3,2,2) # Luxembourg
|
192
|
+
country '353', fixed(2) >> split(3,2,2) # Ireland (0-3-4)
|
193
|
+
country '354', none >> split(3,4) # Iceland
|
194
|
+
country '355', fixed(2) >> split(3,2,2) # Albania
|
195
|
+
country '356', fixed(2) >> split(3,2,2) # Malta
|
196
|
+
country '357', fixed(2) >> split(3,2,2) # Cyprus
|
197
|
+
country '358', match(/^([6-8]00)\d+$/) >> split(3,3) | # Finland
|
198
|
+
match(/^(4\d|50)\d+$/) >> split(3,2,2) |
|
199
|
+
one_of('2','3','5','6','8','9', :max_length => 2) >> split(3,3)
|
200
|
+
country '359', fixed(2) >> split(3,2,2) # Bulgaria
|
201
|
+
|
202
|
+
country '370', fixed(2) >> split(3,2,2) # Lithuania
|
203
|
+
country '371', fixed(2) >> split(3,2,2) # Latvia
|
204
|
+
country '372', fixed(2) >> split(3,2,2) # Estonia
|
205
|
+
country '373', fixed(2) >> split(3,2,2) # Moldova
|
206
|
+
country '374', fixed(2) >> split(3,2,2) # Armenia
|
207
|
+
country '375', fixed(2) >> split(3,2,2) # Belarus
|
208
|
+
country '376', fixed(2) >> split(3,2,2) # Andorra
|
209
|
+
country '377', fixed(2) >> split(3,2,2) # Monaco
|
210
|
+
country '378', fixed(2) >> split(3,2,2) # San Marino
|
211
|
+
country '379', fixed(2) >> split(3,2,2) # Vatican City State
|
212
|
+
|
213
|
+
country '380', fixed(2) >> split(3,2,2) # Ukraine
|
214
|
+
country '381', fixed(2) >> split(3,2,2) # Serbia and Montenegro
|
215
|
+
country '382', fixed(2) >> split(3,2,2) # -
|
216
|
+
country '383', fixed(2) >> split(3,2,2) # -
|
217
|
+
country '384', fixed(2) >> split(3,2,2) # -
|
218
|
+
country '385', fixed(2) >> split(3,2,2) # Croatia
|
219
|
+
country '386', fixed(2) >> split(3,2,2) # Slovenia
|
220
|
+
country '387', fixed(2) >> split(3,2,2) # Bosnia and Herzegovina
|
221
|
+
country '388', fixed(2) >> split(3,2,2) # Group of countries, shared code
|
222
|
+
country '389', fixed(2) >> split(3,2,2) # The Former Yugoslav Republic of Macedonia
|
223
|
+
|
224
|
+
country '420', fixed(3) >> split(3,3) # Czech Republic
|
225
|
+
country '421', fixed(2) >> split(3,2,2) # Slovak Republic
|
226
|
+
country '422', fixed(2) >> split(3,2,2) # Spare code
|
227
|
+
country '423', none >> split(3,2,2) # Liechtenstein (Principality of)
|
228
|
+
country '424', fixed(2) >> split(3,2,2) # -
|
229
|
+
country '425', fixed(2) >> split(3,2,2) # -
|
230
|
+
country '426', fixed(2) >> split(3,2,2) # -
|
231
|
+
country '427', fixed(2) >> split(3,2,2) # -
|
232
|
+
country '428', fixed(2) >> split(3,2,2) # -
|
233
|
+
country '429', fixed(2) >> split(3,2,2) # -
|
234
|
+
|
235
|
+
country '500', fixed(2) >> split(3,2,2) # Falkland Islands (Malvinas)
|
236
|
+
country '501', fixed(2) >> split(3,2,2) # Belize
|
237
|
+
country '502', fixed(2) >> split(3,2,2) # Guatemala (Republic of)
|
238
|
+
country '503', fixed(2) >> split(3,2,2) # El Salvador (Republic of)
|
239
|
+
country '504', fixed(2) >> split(3,2,2) # Honduras (Republic of)
|
240
|
+
country '505', fixed(2) >> split(3,2,2) # Nicaragua
|
241
|
+
country '506', fixed(2) >> split(3,2,2) # Costa Rica
|
242
|
+
country '507', fixed(2) >> split(3,2,2) # Panama (Republic of)
|
243
|
+
country '508', fixed(2) >> split(3,2,2) # Saint Pierre and Miquelon (Collectivité territoriale de la République française)
|
244
|
+
country '509', fixed(2) >> split(3,2,2) # Haiti (Republic of)
|
245
|
+
|
246
|
+
country '590', fixed(3) >> split(3,2,2) # Guadeloupe (French Department of)
|
247
|
+
country '591', fixed(2) >> split(3,2,2) # Bolivia (Republic of)
|
248
|
+
country '592', fixed(2) >> split(3,2,2) # Guyana
|
249
|
+
country '593', fixed(2) >> split(3,2,2) # Ecuador
|
250
|
+
country '594', fixed(3) >> split(3,2,2) # French Guiana (French Department of)
|
251
|
+
country '595', fixed(2) >> split(3,2,2) # Paraguay (Republic of)
|
252
|
+
country '596', fixed(3) >> split(3,2,2) # Martinique (French Department of)
|
253
|
+
country '597', fixed(2) >> split(3,2,2) # Suriname (Republic of)
|
254
|
+
country '598', fixed(2) >> split(3,2,2) # Uruguay (Eastern Republic of)
|
255
|
+
country '599', fixed(2) >> split(3,2,2) # Netherlands Antilles
|
256
|
+
|
257
|
+
country '670', fixed(2) >> split(3,2,2) # Democratic Republic of Timor-Leste
|
258
|
+
country '671', fixed(2) >> split(3,2,2) # Spare code
|
259
|
+
country '672', fixed(2) >> split(3,2,2) # Australian External Territories
|
260
|
+
country '673', fixed(2) >> split(3,2,2) # Brunei Darussalam
|
261
|
+
country '674', fixed(2) >> split(3,2,2) # Nauru (Republic of)
|
262
|
+
country '675', fixed(2) >> split(3,2,2) # Papua New Guinea
|
263
|
+
country '676', fixed(2) >> split(3,2,2) # Tonga (Kingdom of)
|
264
|
+
country '677', fixed(2) >> split(3,2,2) # Solomon Islands
|
265
|
+
country '678', fixed(2) >> split(3,2,2) # Vanuatu (Republic of)
|
266
|
+
country '679', fixed(2) >> split(3,2,2) # Fiji (Republic of)
|
267
|
+
|
268
|
+
country '680', fixed(2) >> split(3,2,2) # Palau (Republic of)
|
269
|
+
country '681', fixed(2) >> split(3,2,2) # Wallis and Futuna (Territoire français d'outre-mer)
|
270
|
+
country '682', fixed(2) >> split(3,2,2) # Cook Islands
|
271
|
+
country '683', fixed(2) >> split(3,2,2) # Niue
|
272
|
+
country '684', fixed(2) >> split(3,2,2) # -
|
273
|
+
country '685', fixed(2) >> split(3,2,2) # Samoa (Independent State of)
|
274
|
+
country '686', fixed(2) >> split(3,2,2) # Kiribati (Republic of)
|
275
|
+
country '687', fixed(2) >> split(3,2,2) # New Caledonia (Territoire français d'outre-mer)
|
276
|
+
country '688', fixed(2) >> split(3,2,2) # Tuvalu
|
277
|
+
country '689', fixed(2) >> split(3,2,2) # French Polynesia (Territoire français d'outre-mer)
|
278
|
+
|
279
|
+
country '690', fixed(2) >> split(3,2,2) # Tokelau
|
280
|
+
country '691', fixed(2) >> split(3,2,2) # Micronesia (Federated States of)
|
281
|
+
country '692', fixed(2) >> split(3,2,2) # Marshall Islands (Republic of the)
|
282
|
+
country '693', fixed(2) >> split(3,2,2) # -
|
283
|
+
country '694', fixed(2) >> split(3,2,2) # -
|
284
|
+
country '695', fixed(2) >> split(3,2,2) # -
|
285
|
+
country '696', fixed(2) >> split(3,2,2) # -
|
286
|
+
country '697', fixed(2) >> split(3,2,2) # -
|
287
|
+
country '698', fixed(2) >> split(3,2,2) # -
|
288
|
+
country '699', fixed(2) >> split(3,2,2) # -
|
289
|
+
|
290
|
+
country '800', fixed(2) >> split(3,2,2) # International Freephone Service
|
291
|
+
country '801', fixed(2) >> split(3,2,2) # -
|
292
|
+
country '802', fixed(2) >> split(3,2,2) # -
|
293
|
+
country '803', fixed(2) >> split(3,2,2) # -
|
294
|
+
country '804', fixed(2) >> split(3,2,2) # -
|
295
|
+
country '805', fixed(2) >> split(3,2,2) # -
|
296
|
+
country '806', fixed(2) >> split(3,2,2) # -
|
297
|
+
country '807', fixed(2) >> split(3,2,2) # -
|
298
|
+
country '808', fixed(2) >> split(3,2,2) # International Shared Cost Service (ISCS)
|
299
|
+
country '809', fixed(2) >> split(3,2,2) # -
|
300
|
+
|
301
|
+
country '830', fixed(2) >> split(3,2,2) # -
|
302
|
+
country '831', fixed(2) >> split(3,2,2) # -
|
303
|
+
country '832', fixed(2) >> split(3,2,2) # -
|
304
|
+
country '833', fixed(2) >> split(3,2,2) # -
|
305
|
+
country '834', fixed(2) >> split(3,2,2) # -
|
306
|
+
country '835', fixed(2) >> split(3,2,2) # -
|
307
|
+
country '836', fixed(2) >> split(3,2,2) # -
|
308
|
+
country '837', fixed(2) >> split(3,2,2) # -
|
309
|
+
country '838', fixed(2) >> split(3,2,2) # -
|
310
|
+
country '839', fixed(2) >> split(3,2,2) # -
|
311
|
+
|
312
|
+
country '850', fixed(2) >> split(3,2,2) # Democratic People's Republic of Korea
|
313
|
+
country '851', fixed(2) >> split(3,2,2) # Spare code
|
314
|
+
country '852', fixed(2) >> split(3,2,2) # Hong Kong, China
|
315
|
+
country '853', fixed(2) >> split(3,2,2) # Macao, China
|
316
|
+
country '854', fixed(2) >> split(3,2,2) # Spare code
|
317
|
+
country '855', fixed(2) >> split(3,2,2) # Cambodia (Kingdom of)
|
318
|
+
country '856', fixed(2) >> split(3,2,2) # Lao People's Democratic Republic
|
319
|
+
country '857', fixed(2) >> split(3,2,2) # Spare code
|
320
|
+
country '858', fixed(2) >> split(3,2,2) # Spare code
|
321
|
+
country '859', fixed(2) >> split(3,2,2) # Spare code
|
322
|
+
|
323
|
+
country '870', fixed(2) >> split(3,2,2) # Inmarsat SNAC
|
324
|
+
country '871', fixed(2) >> split(3,2,2) # Inmarsat (Atlantic Ocean-East)
|
325
|
+
country '872', fixed(2) >> split(3,2,2) # Inmarsat (Pacific Ocean)
|
326
|
+
country '873', fixed(2) >> split(3,2,2) # Inmarsat (Indian Ocean)
|
327
|
+
country '874', fixed(2) >> split(3,2,2) # Inmarsat (Atlantic Ocean-West)
|
328
|
+
country '875', fixed(2) >> split(3,2,2) # Reserved - Maritime Mobile Service Applications
|
329
|
+
country '876', fixed(2) >> split(3,2,2) # Reserved - Maritime Mobile Service Applications
|
330
|
+
country '877', fixed(2) >> split(3,2,2) # Reserved - Maritime Mobile Service Applications
|
331
|
+
country '878', fixed(2) >> split(3,2,2) # Universal Personal Telecommunication Service (UPT)
|
332
|
+
country '879', fixed(2) >> split(3,2,2) # Reserved for national non-commercial purposes
|
333
|
+
|
334
|
+
country '880', fixed(2) >> split(3,2,2) # Bangladesh (People's Republic of)
|
335
|
+
country '881', fixed(2) >> split(3,2,2) # International Mobile, shared code
|
336
|
+
country '882', fixed(2) >> split(3,2,2) # International Networks, shared code
|
337
|
+
country '883', fixed(2) >> split(3,2,2) # -
|
338
|
+
country '884', fixed(2) >> split(3,2,2) # -
|
339
|
+
country '885', fixed(2) >> split(3,2,2) # -
|
340
|
+
country '886', fixed(2) >> split(3,2,2) # Reserved
|
341
|
+
country '887', fixed(2) >> split(3,2,2) # -
|
342
|
+
country '888', fixed(2) >> split(3,2,2) # Reserved for future global service
|
343
|
+
country '889', fixed(2) >> split(3,2,2) # -
|
344
|
+
|
345
|
+
country '890', fixed(2) >> split(3,2,2) # -
|
346
|
+
country '891', fixed(2) >> split(3,2,2) # -
|
347
|
+
country '892', fixed(2) >> split(3,2,2) # -
|
348
|
+
country '893', fixed(2) >> split(3,2,2) # -
|
349
|
+
country '894', fixed(2) >> split(3,2,2) # -
|
350
|
+
country '895', fixed(2) >> split(3,2,2) # -
|
351
|
+
country '896', fixed(2) >> split(3,2,2) # -
|
352
|
+
country '897', fixed(2) >> split(3,2,2) # -
|
353
|
+
country '898', fixed(2) >> split(3,2,2) # -
|
354
|
+
country '899', fixed(2) >> split(3,2,2) # -
|
355
|
+
|
356
|
+
country '960', fixed(2) >> split(3,2,2) # Maldives (Republic of)
|
357
|
+
country '961', fixed(2) >> split(3,2,2) # Lebanon
|
358
|
+
country '962', fixed(2) >> split(3,2,2) # Jordan (Hashemite Kingdom of)
|
359
|
+
country '963', fixed(2) >> split(3,2,2) # Syrian Arab Republic
|
360
|
+
country '964', fixed(2) >> split(3,2,2) # Iraq (Republic of)
|
361
|
+
country '965', fixed(2) >> split(3,2,2) # Kuwait (State of)
|
362
|
+
country '966', fixed(2) >> split(3,2,2) # Saudi Arabia (Kingdom of)
|
363
|
+
country '967', fixed(2) >> split(3,2,2) # Yemen (Republic of)
|
364
|
+
country '968', fixed(2) >> split(3,2,2) # Oman (Sultanate of)
|
365
|
+
country '969', fixed(2) >> split(3,2,2) # Reserved - reservation currently under investigation
|
366
|
+
|
367
|
+
country '970', fixed(2) >> split(3,2,2) # Reserved
|
368
|
+
country '971', fixed(2) >> split(3,2,2) # United Arab Emirates
|
369
|
+
country '972', fixed(2) >> split(3,2,2) # Israel (State of)
|
370
|
+
country '973', fixed(2) >> split(3,2,2) # Bahrain (Kingdom of)
|
371
|
+
country '974', fixed(2) >> split(3,2,2) # Qatar (State of)
|
372
|
+
country '975', fixed(2) >> split(3,2,2) # Bhutan (Kingdom of)
|
373
|
+
country '976', fixed(2) >> split(3,2,2) # Mongolia
|
374
|
+
country '977', fixed(2) >> split(3,2,2) # Nepal
|
375
|
+
country '978', fixed(2) >> split(3,2,2) # -
|
376
|
+
country '979', fixed(2) >> split(3,2,2) # International Premium Rate Service (IPRS)
|
377
|
+
|
378
|
+
country '990', fixed(2) >> split(3,2,2) # Spare code
|
379
|
+
country '991', fixed(2) >> split(3,2,2) # Trial of a proposed new international telecommunication public correspondence service, shared code
|
380
|
+
country '992', fixed(2) >> split(3,2,2) # Tajikistan (Republic of)
|
381
|
+
country '993', fixed(2) >> split(3,2,2) # Turkmenistan
|
382
|
+
country '994', fixed(2) >> split(3,2,2) # Azerbaijani Republic
|
383
|
+
country '995', fixed(2) >> split(3,2,2) # Georgia
|
384
|
+
country '996', fixed(2) >> split(3,2,2) # Kyrgyz Republic
|
385
|
+
country '997', fixed(2) >> split(3,2,2) # Spare code
|
386
|
+
country '998', fixed(2) >> split(3,2,2) # Uzbekistan (Republic of)
|
387
|
+
country '999', fixed(2) >> split(3,2,2) # Reserved for possible future use within the Telecommunications for Disaster Relief (TDR) concept
|
388
|
+
end
|