2011-12-02 272 views
1

我有一個帶有"\\"字符的java字符串(用於轉義的額外'\')。我想將"\\"的所有發生更換爲"\"。任何想法如何完成? str.replaceAll("\\", "\")不起作用。問題在於替換\字符。替換Java字符串中的''字符

+0

是你的字符串'my \ string'還是'my \\ string'。你想替換一兩個斜線嗎? –

+0

「my \ string」在java中無效。它絕對是「我的\ \弦」。 – Anand

+0

我不是在談論java字符串。如果在java中你有String x =「my \\ string」,那麼實際的邏輯字符串是「my \ string」,對吧? –

回答

3
str.replaceAll("\\\\", "\") 

「\」 是指\的\原因是轉義符號

HEH,即使計算器解析器轉換\ \(沒有空格)的單\ :-))

1

Java documentation:

注意的是,在更換 字符串反斜槓(\)和美元符號($)可能導致的結果是不同的比如果它被 視爲文字替換字符串;請參閱Matcher.replaceAll。如果需要,可使用 Matcher.quoteReplacement(java.lang.String)來抑制這些字符的特殊含義 。

+0

哦,諷刺...在你的答案中解決了逃跑的問題! – sehe

+0

@sehe謝謝,我什至沒有看到那些:)) –