在不同的系統中,路徑的分隔符不同,故需要做出判斷,并切換分隔符;
String類中replaceAll方法如下:
String.replaceAll(String regex,String replacement),replaceAll() 方法要用 4 個反斜杠,表示一個反斜杠;
1. java把字符串中的反斜杠(\)替換成雙斜杠(\\)
replaceAll里面用的是正則表達式,所以字符串轉義一次,正則轉義一次,所以一個斜扛要寫4個,如:replaceAll("\\\\","\\\\\\\\");
2.java把字符串中的反斜杠(\)替換成斜杠(/)
replaceAll("\\\\","/");
3.java把字符串中的斜杠(/)替換成反斜杠(\)
replaceAll("/", "\\\");
例如 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("\", "\\\"),就會報正則表達式的錯誤。
JavaScript:
stringObj.replace(rgExp, replaceText)其中stringObj是字符串(string),reExp可以是正則表達式對象(RegExp)也可以是字符串(string),replaceText是替代查找到的字符串。
1. javascript 把字符串中的反斜杠(\)替換成雙斜杠(\\)
replace(/\\/g,"\\\");
2.javascript把字符串中的反斜杠(\)替換成斜杠(/)
replace(/\\/g,"\/");
3.javascript把字符串中的斜杠(/)替換成反斜杠(\)
replace(/\//g,"\");
-
JAVA
+關注
關注
19文章
2959瀏覽量
104553
發布評論請先 登錄
相關推薦
評論