nan*_*itv 4 java regex replace
我想将'n'个斜杠挤出为1,其中n不固定.
例如:
String path = "Report\\\\\\n";
Run Code Online (Sandbox Code Playgroud)
预期产量: "Report\\n"
我尝试了以下方式
System.out.println(path.replaceAll("\\+", "\");
Run Code Online (Sandbox Code Playgroud)
但它正在打印 "Report\\\n"
我无法减少更多.
所有相关的问题/答案都与固定数量的斜杠有关.
有没有通用的方法我可以将所有反斜杠挤到一个?
如果你打印path,你会得到:
Report\\\n
Run Code Online (Sandbox Code Playgroud)
那是因为\应该引用并且它是用\\Java 编写的.
你应该做:
System.out.println(path.replaceAll("\\\\+", "\\\\"));
Run Code Online (Sandbox Code Playgroud)
在(纯)正则表达式中,为了匹配文字 \,你应该引用它.所以它表示为:
\\
Run Code Online (Sandbox Code Playgroud)
在Java中,\表示为\\,简单的数学应该解释4 \s.