开发者

Regular expression for dividing country calling codes

开发者 https://www.devze.com 2022-12-25 18:15 出处:网络
I have a list of calling codes for all countries(the phone number prefixes), I would like to split them up in the

I have a list of calling codes for all countries(the phone number prefixes), I would like to split them up in the country name and the actual code so I can put then into an xml.

I have tried back and forth but can not get a regexp going that takes all cases into account. I think it is fairly simple for someone with a bit of experience.

The codes have these formats:

Afghanistan 93

Anguilla 1 264

Antarctica 6721

Antigua and Barbuda 1 268

Bosnia and Herzegovina 387

Canada 1

Congo, Republic of the 242

Cote d'Ivoire 225

Ireland (Eire) 353

United States of America 1

There are around 235 of them in total, but these are the regulars and the exceptions.

^[a-zA-Z]\s,'()] for between 1 and X words and then it is [0-9\s]{1,5}$ for the numbers:

X
XX
XXX
XXXX
X XXX 

So if I should express it as a sentence it would be: "from beginning of a line, take all characters (1) including space,'() until you encounter digits, then take all of these including space(2) until you encounter a line break."

I am using TextMate, and the docs says:

Te开发者_开发技巧xtMate uses the Oniguruma regular expression library by K. Kosako.

I would appreciate any help given:) Thank you.


This posix regex should be sufficient: ^[a-zA-Z ]+[0-9 ]+$

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号