【问题标题】:Is there a pattern to validate if a phone number is of a concrete country?是否有验证电话号码是否属于具体国家/地区的模式?
【发布时间】:2019-02-07 10:26:39
【问题描述】:

我想知道是否有任何默认模式来验证电话号码是否属于具体国家/地区?

目前,我使用的是Patterns.PHONE.matcher(phone).matches();,但这会验证电话,而不是 EEUU 电话、意大利电话等...

如何知道电话号码是否是具体国家的号码?是否可以不用像 +0012 这样的国际前缀?

【问题讨论】:

    标签: android pattern-matching phone-number


    【解决方案1】:

    使用来自 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 会给你国家代码。此外,您可以像地图一样

    • 美国 => 美国
    • IN => 印度
    • IT => 意大利

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-11
      • 2021-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-20
      • 1970-01-01
      相关资源
      最近更新 更多