2012-11-01 73 views
2

我試圖在JAVA中使用正則表達式來替換手機號碼中任何有趣的字符,但是,它似乎不能刪除之間的' - '數字我的正則表達式不會刪除數字之間的破折號

這裏是我的代碼,

// Remove all (,),-,.,[,],<,>,{,} from string 

myMobileNumber.replaceAll("[^\\d]", ""); 

例如65-12345678

它仍然允許 - 要經過而不將其刪除掉。 =(

回答

5

您應該重新分配的結果。一個字符串是不可變的對象,並且所有的方法包括將.replaceAll不修改它。

myMobileNumber = myMobileNumber.replaceAll("[^\\d]", ""); 

(順便說一句,圖案"\\D"相當於"[^\\d]"。)

+0

非常感謝!!!!它的作品!!! – user1755298

+0

爲什麼我不能投票你的答案=( – user1755298

相關問題