2017-10-09 16 views
1

これは私の正規表現です。私は開閉括弧を見つけて、それらを "\("と "\)"に置き換えたいと思います。replaceAllエラー

word = word.replaceAll(Pattern.quote("("), "\\" + "(").replaceAll(Pattern.quote(")"), "\\" + ")"); 

単語= "単語)" 場合、これが出力されます:あなたはそれがものを変更していない

New word is: word) 

を見ることができるように。

word = word.replaceAll(Pattern.quote("("), "\\\\" + "(") 
     .replaceAll(Pattern.quote(")"), "\\\\" + ")"); 

またはPattern.quoteなし::働い

word = word.replace("(", "\\(").replace(")", "\\)"); 
+1

なぜあなたは、このような単純な交換のために正規表現を使用する必要がありますか?通常の置換機能を使用してトラブルを解決してください: 'word.replace("、 "\\" + "(") "。"( ")"、 "\\") ");' –

+0

あなたはそれが働いた。これを答えに入れることができます:) –

答えて

1

てみてください:

word.replace("(", "\\" + "(").replace(")", "\\" + ")"); – OH GOD SPIDERS 

replacing \\ with \\\\ in the replaceAll - YCF_L. 
0

2つの答えを:

word = word.replaceAll("\\(", "\\\\(").replaceAll("\\)", "\\\\)"); 

またはその代わりに、あなただけの置き換えに使用することができますあなたの場合には、このような\\\\を使用する