Как заменить "(двойные кавычки) в строке с \" в java

У меня есть строковая переменная strVar со значением как ' "value1" ', и я хочу заменить все двойные кавычки значением ' \" '. Поэтому после замены значение будет выглядеть как ' \"value1\" '

Как это сделать в java? Пожалуйста, помогите мне.

Ответ 1

Вы ищете

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

DEMO

Я бы не использовал replaceAll, поскольку он использует синтаксис regex в описании того, что заменить и как заменить, что означает, что \ нужно будет экранировать в строке "\\", а также в regex \\ ( должен быть записан как строка "\\\\"), что означает, что нам нужно будет использовать

replaceAll("\"", "\\\\\"");

или, возможно, немного чище:

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

С replace у нас автоматически появляется механизм экранирования.

Ответ 2

на самом деле это:   strVar.replaceAll("\"", "\\\\\"");

Ответ 3

Например, возьмите строку, которая имеет такую ​​структуру --- → >

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

И вы хотите заменить все двойные кавычки пустым значением или другим словом, если вы хотите обрезать все двойные кавычки.

Просто сделайте это,

String new_obj= obj.replaceAll("\"", "");

Ответ 4

Строки форматируются с двойными кавычками. У вас есть одинарные кавычки, используемые для char s. Что вы хотите, так это:

String foo = " \"bar\" ";

Ответ 5

Это должно дать вам то, что вы хотите;

System.out.println("'\\\" value1 \\\"'");

Ответ 6

Чтобы заменить двойные кавычки

str=change condition to"or"      

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

После замены: изменить условие на\ "или \"

Чтобы заменить одиночные кавычки

str=change condition to'or'      

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

После замены: измените условие на\'или \'