关闭

将斜杠替换成两个斜杠 java replaceAll方法 正则表达式

512人阅读 评论(0) 收藏 举报
分类:
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("\\", "\\\\"); 

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

还把有 反斜杠 换成 斜杠 
String path="aaa\\bbb"; 

path=path.replace("\\", "/"); 


引用自: http://zjutsoft.iteye.com/blog/655177

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:41782次
    • 积分:692
    • 等级:
    • 排名:千里之外
    • 原创:24篇
    • 转载:34篇
    • 译文:0篇
    • 评论:1条
    最新评论