首页 > 代码库 > java反斜杠替换

java反斜杠替换

 

java replaceAll() 方法要用 4 个反斜杠,表示一个反斜杠 

例如 str1="aa\bbb"; str2="aa‘bbb"; 

要想替换成 str1="aa\\bbb";str2="aa\‘bbb"; 

必须这样替换: 

str1 = str1.replaceAll("\\\\", "\\\\\\\\"); 
str2 = str2.replaceAll("‘", "\\\\‘"); 

原因如下: 

String 的 replaceAll() 方法,实际是采用正则表达式的规则去匹配的, 

\\\\ ,java解析为\\交给正则表达式, 正则表达式再经过一次转换,把\\转换成为\ 

也就是java里面要用正则来表示一个\. 必须写成4个\ 

如果要表示\\,那就要写8个\ 

所以如果写成: str1 = str1.replaceAll("\\", "\\\\"); 

就会报正则表达式的错误。

 

 

Java 把字符串中的反斜杠(\)替换成(\\)

replaceAll里面用的是正则表达式,所以字符串转义一次,正则转义一次,所以一个斜扛要写4个,用replaceAll( "\\\\ ",   "\\\\\\\\ ");

java反斜杠替换