[regex] Modifier les captures lors d'un remplacement
Bonjour,
J'aimerai savoir si il existe des "modifiers" pour la chaine de remplacement dans les regex.
Par exemple :
Code:
String texte = "mon message à modifier".replaceAll("(\\s|^|\\-)([^\\s\\-])(-1*)","$1\U($2)\L($3)");
Au lieu de :
Code:
1 2 3 4 5 6 7
| Pattern p = Pattern.compile("(\\s|^|\\-)([^\\s\\-])([^\\s\\-]*)", Pattern.CASE_INSENSITIVE + Pattern.UNICODE_CASE);
Matcher m = p.matcher("mon message à modifier");
StringBuffer res = new StringBuffer();
while (m.find()) {
res.append(m.group(1) + m.group(2).toUpperCase() + m.group(3).toLowerCase());
}
String text = res.toString(); |
Merci d'avance,
devyan