[JAVA] remplacer '\' par '\\'
jerome
-
yamdjio Messages postés 91 Statut Membre -
yamdjio Messages postés 91 Statut Membre -
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.
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.
Configuration: j2sdk 1.4.2
5 réponses
-
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+ -
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); -
J'ai le meme probleme actuellement.
peux tu me dire comment tu as fait si tu as trouve?
Merci
ltls -
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 ) -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
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................