20

値が as の文字列変数 strVar があり、値' "value1" 'のすべての二重引用符を' \" '. したがって、交換後の値は次のようになります' \"value1\" '

Javaでこれを行う方法は?親切に私を助けてください。

4

6 に答える 6

52

あなたは探している

str = str.replace("\"", "\\\"")

デモ

replaceAll何を置き換えるか、どのように置き換えるかの説明で正規表現構文を使用するため、使用を避けます。つまり、文字列だけでなく正規表現でも\エスケープする必要があります (文字列として記述する必要があります)。つまり、使用する必要があります。"\\"\\"\\\\"

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

またはおそらく少しきれいです:

str = str.replaceAll("\"", Matcher.quoteReplacement("\\\""))

これによりreplace、エスケープメカニズムが自動的に追加されました。

于 2013-10-10T15:22:23.623 に答える
9

実際には次のとおりです。 strVar.replaceAll("\"", "\\\\\"");

于 2013-10-10T15:24:50.823 に答える
5

たとえば、次のような構造を持つ文字列を考えてみましょう--->>>

String obj = "hello"How are"you";

また、すべての二重引用符を削除する場合は、すべての二重引用符を空白の値に置き換えます。つまり、すべての二重引用符を削除します。

このようにするだけで、

String new_obj= obj.replaceAll("\"", "");
于 2014-12-30T06:30:13.520 に答える
0

これにより、必要なものが得られるはずです。

System.out.println("'\\\" value1 \\\"'");
于 2013-10-10T15:33:58.367 に答える
0

二重引用符を置き換えるには

str=change condition to"or"      

str=str.replace("\"", "\\"");

置換後:条件を\"or\"に変更

一重引用符を置き換えるには

str=change condition to'or'      

str=str.replace("\'", "\\'");

置換後:条件を\'or\'に変更

于 2014-03-26T08:33:53.693 に答える
0

文字列は二重引用符でフォーマットされます。あなたが持っているのは、 charsに使用される一重引用符です。あなたが欲しいのはこれです:

String foo = " \"bar\" ";

于 2013-10-10T15:24:23.590 に答える