具有替换字符串方法的Java正则表达式

标签 java regex string replace

我不明白正则表达式是如何完成的,我正在尝试让一个替换语句与之一起工作。

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

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

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

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

谢谢你的回复。

最佳答案

试试这个:

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

我为不是数字或点添加了一个字符类。

关于具有替换字符串方法的Java正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9916884/

相关文章:

关于原始数组的 Java 泛型方法代码重复问题

java - 从命令行在 Java 代码中进行更高级别的语义搜索和替换

java - Guice jar 中的 Assisted 类在哪里?

java - 如何更改以下模式以找到所有可能的匹配项?

Java:强制字符串名称被接受为类?

c - 关于如何创建一个接受字符串并返回带有日期和时间的字符串的 C 函数的想法

java - 无法启动 Oracle WebLogic Server

java - 正则表达式仅从 xml 标签中删除 uri 前缀(标签内)

regex - 如何在 Swift 字符串中只搜索整个单词

android - 使用字符串 android 时的性能