[Regex] Remplacement d'une chaîne avec $
Bonjour,
Alors voilà, j'essaye depuis un moment de remplacer toutes les occurences de "$time" en "t" avec l'API de Java 1.4.2. Quelque unes de mes tentatives infructueuses:
Code:
1 2 3 4 5 6
|
String maChaine = "Ma chaine avec $time et d'autre chose $time..." ;
String newString = maChaine.replaceAll("$time", "t") ;
String newString = maChaine.replaceAll("\\$time", "t") ;
String newString = maChaine.replaceAll("\\Q$time\\E", "t") ;
String newString = maChaine.replaceAll("\\Q$\\Etime", "t") ; |
Avec Java 5.0:
Code:
1 2
|
String newString = maChaine.replace("$time","t") ; |
fonctionne bien mais je ne souhaite pas l'utiliser car ce serait la seul ligne de toute mon projet qui nécessiterait le passage à Java 5.0...
J'ai donc aussi essayé de copier le code de la méthode de Java 5.0
Code:
1 2
|
String newString = Pattern.compile("$time", Pattern.LITERAL).matcher(maChaine).replaceAll(Matcher.quoteReplacement("t")); |
mais Pattern.LITERAL et Matcher.quoteReplacement sont aussi Java 5.0...
Donc, j'ai essayé ça:
Code:
1 2
|
String newString = Pattern.compile("$time", Pattern.DOTALL).matcher(maChaine).replaceAll("t"); |
Toujours sans succès...
Quelqu'un a une idée ?