正在尝试删除除0-9和句点之外的所有字母和字符。我使用的是Character.isDigit()
,但是它也去掉了小数,我怎么还能保留小数呢?
发布于 2012-04-29 22:30:25
尝试以下代码:
String str = "a12.334tyz.78x";
str = str.replaceAll("[^\\d.]", "");
现在str
将包含"12.334.78"
。
发布于 2012-04-29 22:31:29
我会使用正则表达式。
String text = "-jaskdh2367sd.27askjdfh23";
String digits = text.replaceAll("[^0-9.]", "");
System.out.println(digits);
打印
2367.2723
对于负数,您可能也希望保留-
。
发布于 2015-02-24 20:53:46
解决方案
使用破折号
String phoneNumberstr = "Tel: 00971-557890-999";
String numberRefined = phoneNumberstr.replaceAll("[^\\d-]", "");
结果:0097-557890-999
。
没有破折号
如果你也不需要字符串中的"-“,你可以这样做:
String phoneNumberstr = "Tel: 00971-55 7890 999";
String numberRefined = phoneNumberstr.replaceAll("[^0-9]", "");
结果:0097557890999
。
https://stackoverflow.com/questions/10372862
复制相似问题