3

私はJavaとAndroidの経験がかなり浅いです。Android Phone Emulator の連絡先の 1 つに保存されている電話番号を取得しようとしています。私はそれを取得することに成功しましたが、番号は「(987) 654-3210」のような形式の文字列で返されました。integerまたはlongに変換したい。どうやってやるの?を使用するInteger.parseInt(String number)と、 が返されますNumberFormatException。使用しようとしても失敗しLong.valueOf(String number)ました。じゃあどうすればいいの?中括弧やハイフンなしで「9876543210」のようにしたい.

4

2 に答える 2

8

using the long for storing number will be better

   String str="(987) 654-3210";
   String stt=str.replaceAll("\\D+","");
   long num= Long.parseLong(stt);
   System.out.println(num);
于 2013-06-27T03:59:50.137 に答える
6

これは単純なはずです。以下のように、Javaで正規表現を使用してこれを行うことができます

phoneStr = str.replaceAll("\\D+","");

これにより、文字列から数字以外が削除され、数字のみが得られます。次に、使用できます

int number = Integer.parseInt(phoneStr);
于 2013-06-27T03:42:32.570 に答える