是否可以使用replaceAll()替换具有相同数量空格的字符串中的前导零?

for*_*xec 3 java regex

在Java中,我试图用"spacespace1.234"替换像"001.234"这样的字符串.但是,我是一个正则表达式的菜鸟,我似乎最终将所有前导零替换为单个空格.

我明白我可以通过循环轻松完成这项工作,但我正在尝试获取正则表达式并感谢任何帮助:)

Ala*_*ore 6

没问题:

String resultString = subjectString.replaceAll("\\G0", " ");
Run Code Online (Sandbox Code Playgroud)

\G\A在第一次迭代时起作用(字符串开始锚点)replaceAll(),但在后续传递中,它将匹配锚定到上一个匹配结束的点.这可以防止它在字符串中的任何其他位置匹配零,如小数点后.