Java String 删除所有非数字字符但保留小数分隔符

新手上路,请多包涵

尝试删除所有不是 0-9 和句点的字母和字符。我正在使用 Character.isDigit() 但它也删除了小数点,我怎样才能保留小数点?

原文由 DRing 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 943
2 个回答

试试这个代码:

 String str = "a12.334tyz.78x";
str = str.replaceAll("[^\\d.]", "");

现在 str 将包含 "12.334.78"

原文由 Óscar López 发布,翻译遵循 CC BY-SA 3.0 许可协议

我会使用正则表达式。

 String text = "-jaskdh2367sd.27askjdfh23";
String digits = text.replaceAll("[^0-9.]", "");
System.out.println(digits);

印刷

2367.2723

您可能希望保留 - 以及负数。

原文由 Peter Lawrey 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题