我曾尝试在JAVA中使用正则表达式来替换字符串中任何有趣的字符,但是,它似乎无法删除数字之间的“ - ”
这是我的代码,
// Remove all (,),-,.,[,],<,>,{,} from string
myMobileNumber.replaceAll("[^\\d]", "");
例65-12345678
它仍然允许 - 通过而不删除它。 =(
答案 0 :(得分:5)
您应该重新分配结果。 String是一个不可变对象,包括.replaceAll
在内的所有方法都不会修改它。
myMobileNumber = myMobileNumber.replaceAll("[^\\d]", "");
(顺便说一句,模式"\\D"
相当于"[^\\d]"
。)