Как заменить двойные кавычки пробелом в Java? - PullRequest
22 голосов
/ 02 марта 2010

Например:

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

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

I don't like these double quotes

Ответы [ 4 ]

31 голосов
/ 02 марта 2010

Использование 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("\"", ""));
8 голосов
/ 02 марта 2010

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

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

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

String replaced = original.replace("\"", "");
2 голосов
/ 21 ноября 2011

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

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

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

2 голосов
/ 02 марта 2010

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

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

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

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

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

...