将字符串电话号码转换为整数

Sai*_*Das 2 java android

我在Java和Android方面都相当缺乏经验.我正在尝试检索存储在Android手机模拟器的其中一个联系人中的电话号码.虽然我成功获取它,但数字已经以"(987)654-3210"的格式返回一个字符串.我想将其转换为整数或长整数.我怎样才能做到这一点?如果我使用Integer.parseInt(String number),它会返回一个NumberFormatException.尝试使用时Long.valueOf(String number)也失败了.那我该怎么办?我希望它像"9876543210",没有任何大括号或连字符.

Ruc*_*era 10

使用long存储号码会更好

   String str="(987) 654-3210";
   String stt=str.replaceAll("\\D+","");
   long num= Long.parseLong(stt);
   System.out.println(num);
Run Code Online (Sandbox Code Playgroud)


blg*_*101 7

这应该很简单.您可以在java中使用正则表达式来执行此操作,如下所示

phoneStr = str.replaceAll("\\D+","");
Run Code Online (Sandbox Code Playgroud)

这将删除字符串中的非数字,仅为您提供数字.然后你可以使用

int number = Integer.parseInt(phoneStr);
Run Code Online (Sandbox Code Playgroud)

  • 你满足了我的需要.谢谢 (2认同)