2014-10-08 84 views
2

我有一個電話號碼列表,我從API中檢索,它是這樣的: (22)9969-6666我需要更改它,所以它看起來像這樣:552299696666如何在java中將電話號碼格式化爲Android

我試了一下,到目前爲止是:

   String phoneNum = "(22) 9969-6666 "; 
       System.out.println(phoneNum.replaceFirst("(\\d{3})(\\d{3})(\\d+)", "($1)-$2-$3")); 

給我下面的結果:

10-08 00:23:04.155 30677-30677/br.com I/System.out﹕ (22) (996)-966-66 

回答

1

爲什麼不空更換任何非數字字符並添加+在產生的字符串前面簽字?

String phoneNum = "(22) 9969-6666 "; 
phoneNum = "+" + phoneNum.replaceAll("[^\\d]", ""); 
System.out.println(phoneNum); 

輸出:2299696666

+0

我是新來的Java編程語言,不知道該怎麼做,謝謝你大時間! – jgandroid 2014-10-08 03:42:45

+0

@jgandroid:不客氣。我只是在答案中更新了正則表達式,所以請確保您獲得最新的。 – Voicu 2014-10-08 03:45:25

+0

再次感謝隊友,現在一切正常 – jgandroid 2014-10-08 03:49:52