1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| public static String convert(String text) {
// Pattern qui permet de rechercher les �
Pattern pattern = Pattern.compile("&#([0-9]{4});");
Matcher matcher = pattern.matcher(text);
if (matcher.find()) {
// Si on trouve au moins un élément à remplacer :
// On crée un StringBuffer qui contiendra la nouvelle chaine
StringBuffer sb = new StringBuffer(text.length());
// Puis pour chaque élément :
do {
// On récupère le nombre contenu dans �
int number = Integer.parseInt(matcher.group(1));
// Et on remplace l'élément trouvé par le caractère correspondant :
matcher.appendReplacement(sb, Character.toString((char)number));
} while (matcher.find());
// On ajoute la fin de chaine
matcher.appendTail(sb);
// Et on retourne la chaine ainsi créé
return sb.toString();
}
return text; // Aucun élément à remplacer
} |
Partager