正则获得国际电话前缀
Posted | stdout
2013年的时候喷过ITU这个国际电话号码,前缀是变长的问题
今天遇到问题,需要按国际区号初步分析归属地和供应商,stackoverflow和AI给的都很渣,写了个正则:
re.compile(r"""\+
(1 # north america
|(?: # 3 digits
21|22|23|24|25|26|29|35|37|38|42|
50|59|67|68|69|80|85|87|88|96|97|99)\d
|[2-9]\d) # two digits
""", re.VERBOSE)
+1
开头的是北美,然后依次寻找3位的,再匹配2位的。
+7
本来是苏联的,现在给 哈萨克斯坦 和 俄罗斯 了,就当成两位的判定吧。
Comments