java - 在 Android 中比较电话号码

标签 java android string phone-number

我需要比较两个电话号码以确定它们是否来自同一发件人/收件人。用户可以向联系人发送消息,该联系人可以回复。

回复通常进来 +[country-code][area-code-if-any][and-then-the-actual-number] 格式。例如, +94 71 2593276 斯里兰卡电话号码。

当用户发送一条消息时,他通常会输入格式(对于上面的例子)0712593276(假设他也在斯里兰卡)。

所以我需要的是,我需要检查这两个数字是否相同。这个应用程序将在国际上使用。所以我不能只用 0 替换前 2 位数字(这样对于像美国这样的国家来说这将是一个问题)。有什么方法可以在 Java 或 Android 中做到这一点?

谢谢。

最佳答案

Android 有不错的 PhoneNumberUtils,我猜你正在寻找:

    public static boolean compare (String a, String b)

看看: http://developer.android.com/reference/android/telephony/PhoneNumberUtils.html

使用它应该是这样的:

String phone1   
String phone2 

 if (PhoneNumberUtils.compare(phone1, phone2)) {
    //they are the same do whatever you want!
   }

关于java - 在 Android 中比较电话号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12282569/

相关文章:

java - 将 byte[] 转换为 Java 字符串。添加一个?在每次转换中

java - 是否可以仅将特殊字符转换为 unicode?

android - DatePickerDialog软键盘类型无效

android - ADT : Java heap space 问题

android - 升级到Android Studio 4.0后Lombok注释不起作用

java - 从 String.format() 生成的字符串中提取值

c - 将带有空终止符的char添加到C中的字符串

java - 嵌套的 POJO 列表流到另一个 POJO 列表

JAVASCRIPT 值到 JSP 变量

java - Java 是 "pass-by-reference"还是 "pass-by-value"?