我为不同的国家/地区提供这些正则表达式,
var ukM = /(070|071|072|073|074|075|076|077|078|079)\d{7,8}$/;
var ireM = /(083|085|086|087|089)\d{7,8}$/;
var ireL = /(01|021|022|023|024|025|026|027|028|029|0402|0404|041|042|043|044|045|046|047|049|0504|0505|051|052|053|056|057|058|059|061|062|063|064|065|066|067|068|069|071|074|090|091|093|094|095|096|097|098|099)\d{7,8}$/;
var usaM = /(713|071|072|073|074|075|076|077|078|079)\d{7,8}$/;
var usaL = /(201|202|203|204|205|206|207|208|209|210|211|212|213|214|215|216|217|218|219|224|225|226|227|228|229|231|234|236|239|210|211|212|213|214|215|216|217|218|219|224|)\d{7,8}$/;
我可以用更好的方式宣布这些吗?一个世界上每个国家都有的正则表达式?
由于
答案 0 :(得分:3)
您可以使用字符类来减少正则表达式,例如
var ukM = /07[0-9]\d{7,8}$/;
var ireM = /08[35-9]\d{7,8}$/;
...
答案 1 :(得分:0)
您可以更改它:
var ukM = /(07\d)\d{7,8}$/;
var ireM = /(08[35-79])\d{7,8}$/;
var ireL = (01|2[1-9]|040[24]|04[1-79]|050[45]|05[1-36-9]|06[1-9]|07[14]|09[0-9]\d)\d{7,8}$/;
var usaM = /(713|07[1-9])\d{7,8}$/;
var usaL = /(20[1-9]|2[12]\d|23[1469])\d{7,8}$/;