我有来自 Android 联系人的不同国家/地区的手机号码列表。其中一些联系人有国家代码,而另一些则没有。
因此,解决方案可能是:
- 获取世界上所有支持的国家代码
- 用所有国家代码循环一个数字
- 检查号码的有效性
这可能是预测受支持国家数量的一种方法。我想知道是否有更好的方法来解决这个问题?
我有来自 Android 联系人的不同国家/地区的手机号码列表。其中一些联系人有国家代码,而另一些则没有。
因此,解决方案可能是:
这可能是预测受支持国家数量的一种方法。我想知道是否有更好的方法来解决这个问题?
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
String numberStr = "04157012311";
Set<String> allRegions = phoneUtil.getSupportedRegions();
Set<String> validRegions = new LinkedHashSet<String>();
for (String region : allRegions) {
try {
if (phoneUtil.isValid(phoneUtil.parse(numberStr, region))) {
validRegions.add(region);
}
} catch (NumberParseException e) {
// Handle NumberParseException
}
}
validRegions
将包含您的电话号码所在地区的 ISO 代码