replaceAll()斜槓的用法


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("\\", "\\\\");


就會報正則表達式的錯誤。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章