[JAVA] remplacer '\' par '\\'

Fermé
jerome - 8 avril 2005 à 17:24
yamdjio Messages postés 88 Date d'inscription lundi 18 août 2014 Statut Membre Dernière intervention 21 mai 2015 - 18 août 2014 à 16:00
Bonjour,

je souhaite remplacer dans un String tous les backslash '\' par des double backslash '\\'.
Or l'instruction texte.replaceAll("\\", "\\\\") ne fonctionne pas.

Je suis un peu perdu

Merci de votre aide.
A voir également:

5 réponses

carkiasis Messages postés 67 Date d'inscription jeudi 17 février 2005 Statut Membre Dernière intervention 26 avril 2007 28
22 mars 2006 à 17:34
Dans la doc java API, il est noté que :
str.replaceAll(regex,replacement)
equivaut à :
 Pattern.compile(regex).matcher(str).replaceAll(replacement)

Essayez avec cette technique, peut etre que ca marchera.

Ou alors, le probleme vient peut etre d'un probleme d'allocation.
Essayez, au lieu de replaceAll("/","//") de mettre :
String regex=new String("/");
String replacement=new String("//");
str.replaceAll(regex,replacement);

Voila, la solution est peut etre là.

a+
4
Salut,


Il faut le quadrupler

myString.replaceAll("\\\\", "\\\\\\\\") ;
Et ça devrait marcher.

a++
0
C'est tout a fait ça, merci.
0
j' ai le même pb et je l'ai résolu tout simplement comme ça :
String as = new String ("\\");
String das = new String("\\\\");
str =str.replace(as, das);
4
J'ai le meme probleme actuellement.
peux tu me dire comment tu as fait si tu as trouve?

Merci
ltls
0
terro3 Messages postés 62 Date d'inscription mercredi 1 août 2007 Statut Membre Dernière intervention 29 mai 2009 13
8 août 2007 à 13:40
carkaris , le regex ne veut pas dire string regex (ou regex n'est que le nom) regex veut dire regular expression et ca a une syntaxe biern particuliere , je conseille d'aller voir les tuto la dessus car / signifie quelque chose en regex , je ne sais plus s'il faut mettre des parentheses ou crochets.... le plus facile doit etre de faire 2 expressions reguliere (string truc = new regex et apres truc = ... ) pour pouvoir faire srt.remplace(truc,machin)


(ou je peux me tromper :p )
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yamdjio Messages postés 88 Date d'inscription lundi 18 août 2014 Statut Membre Dernière intervention 21 mai 2015 5
18 août 2014 à 16:00
salut je vient de tomber sur le pb. remplacer le caractère \ par \\ par exemple pour les noms de dossier et absolute path.

pour cela il faudra bien évidement utiliser string.replace mais d'une façon un peu plus particulière :

string test=new string ("c:\disc");
string test1=test.replaceAll("\\\\", "\\\\\\\\");

j'espère pouvoir aider ceux qui auront ce même problème plutard................
0