【发布时间】:2019-02-07 10:26:39
【问题描述】:
我想知道是否有任何默认模式来验证电话号码是否属于具体国家/地区?
目前,我使用的是Patterns.PHONE.matcher(phone).matches();,但这会验证电话,而不是 EEUU 电话、意大利电话等...
如何知道电话号码是否是具体国家的号码?是否可以不用像 +0012 这样的国际前缀?
【问题讨论】:
标签: android pattern-matching phone-number
我想知道是否有任何默认模式来验证电话号码是否属于具体国家/地区?
目前,我使用的是Patterns.PHONE.matcher(phone).matches();,但这会验证电话,而不是 EEUU 电话、意大利电话等...
如何知道电话号码是否是具体国家的号码?是否可以不用像 +0012 这样的国际前缀?
【问题讨论】:
标签: android pattern-matching phone-number
使用来自 Google 的 libphonenumber 库
implementation 'io.michaelrocks:libphonenumber-android:8.8.5'
代码
PhoneNumberUtil phoneNumberUtil = PhoneNumberUtil.createInstance(this)
PhoneNumber phoneNumber = phoneNumberUtil.parse("+917874962727", null)
String regionCode = phoneNumberUtil.getRegionCodeForNumber(phoneNumber) // IN for India
getRegionCodeForNumber 会给你国家代码。此外,您可以像地图一样
【讨论】: