我尝试使用 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中文网其他相关文章!