Как заменить двойные кавычки пустым пространством в Java?

например:

"I don't like these "double" quotes"

и я хочу, чтобы выход был

I don't like these double quotes

4 ответов


использовать String#replace().

чтобы заменить их пробелами (в соответствии с вашим заголовком вопроса):

System.out.println("I don't like these \"double\" quotes".replace("\"", " "));

вышеуказанное можно также сделать с характерами:

System.out.println("I don't like these \"double\" quotes".replace('"', ' '));

снять их (как в вашем примере):

System.out.println("I don't like these \"double\" quotes".replace("\"", ""));

вам не нужно регулярное выражение для этого. Просто посимвольную замену достаточно. Вы можете использовать String#replace() для этого.

String replaced = original.replace("\"", " ");

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

String replaced = original.replace("\"", "");

Вы можете сделать это так:

string tmp = "Hello 'World'";
tmp.replace("'", "");

но это просто заменит одинарные кавычки. Чтобы заменить двойные кавычки, вы должны сначала избежать их, например:

string tmp = "Hello, \"World\"";
tmp.replace("\"", "");

вы можете заменить его пробелом или просто оставить его пустым (я считаю, что вы хотели, чтобы он остался пустым, но название вашего вопроса подразумевает иное.


строки неизменяемы, поэтому вам нужно сказать

sInputString = sInputString("\"","");

не только правая сторона =