首页 >Java >Java 中的 Googlecode libphonenumber,如何解析 PhoneNumber 字符串'0044********”或'044********”,其中 44 是国家/地区代码,但以零为前缀

Java 中的 Googlecode libphonenumber,如何解析 PhoneNumber 字符串'0044********”或'044********”,其中 44 是国家/地区代码,但以零为前缀

WBOY
WBOY转载
2024-02-06 08:24:03683浏览
问题内容

我尝试使用 libphonenumber 库解析包含电话号码但在国际国家/地区代码之前以零为前缀的字符串,但出现异常:

"INVALID_COUNTRY_CODE. Could not interpret numbers after plus-sign."

以及如何使其仅适用于国家/地区代码之前或国家/地区之后的两个零字符,但如果它具有超过 2 个零字符,则应该失败。


正确答案


前缀 00 并非在所有国家/地区都是国家/地区代码的“官方”前缀。因此,图书馆默认不接受它。

您可以在该网页上测试该库:https://www.php.cn/link/69bfa2aa2b7b139ff581a806abf0a886

当您选择使用 00 作为国家/地区代码前缀的默认国家/地区时,您将看到仅接受您的号码。您可以通过在“默认国家/地区”字段中设置 gb 作为国家/地区代码前缀的默认国家/地区时,您将看到仅接受您的号码。您可以通过在“默认国家/地区”字段中设置 gb 来测试它。

您可以在 该网页

如您所见,parse 方法的第二个参数是defaultRegion。您必须设置一个使用您要解析的电话号码格式的国家/地区。

这回答了您问题的第二部分。正如您将看到问题的第一部分具有相同的解决方案。

以上是Java 中的 Googlecode libphonenumber,如何解析 PhoneNumber 字符串'0044********”或'044********”,其中 44 是国家/地区代码,但以零为前缀的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文转载于:stackoverflow.com。如有侵权,请联系admin@php.cn删除