nantitv nantitv - 4 months ago 12
Java Question

How to replace 'n' back slashes with one in java

I would like to squeeze out 'n' number of slashes into 1, where n is not fixed.
For example:

String path = "Report\\\\\\n";


Expected output :
"Report\\n"


I tried the following way

System.out.println(path.replaceAll("\\+", "\");


But it's printing
"Report\\\n"


I am not able to reduce more than that.

All the related so question/answer related to fixed number of slashes.

Is there any generic way I can squeeze all backslashes to one.?

Answer

If you print path, you'll get:

Report\\\n

That's because \ should be quoted and it's written as \\ in Java.

You should do:

System.out.println(path.replaceAll("\\\\+", "\\\\"));
Comments