我需要确定电话号码是否有效,然后尝试拨号。电话可以在世界上任何地方。
什么正则表达式将匹配有效的国际电话号码?
\+(9[976]\d|8[987530]\d|6[987]\d|5[90]\d|42\d|3[875]\d| 2[98654321]\d|9[8543210]|8[6421]|6[6543210]|5[87654321]| 4[987654310]|3[9643210]|2[70]|7|1)\d{1,14}$
是用于匹配通用国际电话号码的正确格式。我用美国国际接入码标识符”代替了美国陆地线为中心的国际接入码011,这是强制性的。我还将国家号码的最小值更改为至少一位数。
请注意,如果以此格式将数字输入到手机通讯录中,无论您在何处旅行,都可以成功拨打通讯录中的任何号码。对于陆线,请用您拨打的国家/地区的国际接入码替换plus。
注意,这不考虑国家号码计划规则 – 具体来说,它允许国家号码计划不允许的零和零,并且允许一些国家(例如美国)的号码长度大于国家号码计划。