Par exemple:
"I don't like these "double" quotes"
et je veux que la sortie soit
I don't like these double quotes
Utilisez String#replace()
.
Pour les remplacer par des espaces (selon le titre de votre question):
System.out.println("I don't like these \"double\" quotes".replace("\"", " "));
Ce qui précède peut également être fait avec des personnages:
System.out.println("I don't like these \"double\" quotes".replace('"', ' '));
Pour les supprimer (selon votre exemple):
System.out.println("I don't like these \"double\" quotes".replace("\"", ""));
Vous n'avez pas besoin de regex pour cela. Un simple remplacement caractère par caractère suffit. Vous pouvez utiliser String#replace()
pour cela.
String replaced = original.replace("\"", " ");
Notez que vous pouvez également utiliser une chaîne vide ""
à la place pour remplacer par. Sinon, les espaces doubleraient.
String replaced = original.replace("\"", "");
Les chaînes sont immuables, vous devez donc dire
sInputString = sInputString("\"","");
pas seulement le côté droit du =
Vous pouvez le faire comme ceci:
string tmp = "Hello 'World'";
tmp.replace("'", "");
Mais cela ne fera que remplacer les guillemets simples. Pour remplacer les guillemets doubles, vous devez d'abord les échapper, comme ceci:
string tmp = "Hello, \"World\"";
tmp.replace("\"", "");
Vous pouvez le remplacer par un espace, ou simplement le laisser vide (je pense que vous vouliez qu'il soit laissé vide, mais le titre de votre question implique le contraire.