我无法理解正则表达式是如何完成的,并且正在尝试让replace语句与正则表达式一起使用。

我正在尝试在除数字和小数点以外的所有内容周围放置一个空格

mathEquation = mathEquation.replaceAll("\\D(?!$)", " $0 ");


这适用于数字以外的所有内容,但仍会在小数点附近添加空格(因为\\D包括小数点)。我不知道如何从搜索/替换中排除小数。

如果有人可以帮助我创建正则表达式,我正在寻找或引导我找到答案,我将不胜感激。

多谢您的回覆。

最佳答案

尝试这个:

mathEquation = mathEquation.replaceAll("[^\\d.](?!$)", " $0 ");


我为非数字或点添加了字符类。

10-08 19:43