使用 Google 的 libphonenumber 库验证不带区域的国际手机号码

Using Google's libphonenumber library for validation international mobile number without region

我正在尝试验证国际手机号码。

例如:"+972523254545".

Afaik,这个数字应该在任何地方都有效。

但是这个库也需要 "region"。为什么会这样,我该如何克服它?

地区 不应是必填字段。它不用于带有前导“+”的 phone 个数字。在不指定区域的情况下,我可以在 python 版本中解析该数字:

>>> import phonenumbers

>>> phonenumbers.parse('+972523254545')
PhoneNumber(country_code=972, national_number=523254545, extension=None, italian_leading_zero=None, number_of_leading_zeros=None, country_code_source=None, preferred_domestic_carrier_code=None)

而且这个数字在没有指定区域的情况下解析得很好on their demo page


如果您确实必须指定一个区域,那么只需将任何区域粘贴到那里即可。它将被忽略,因为号码中前导的“+”表示它是由国际电话代码引导的。