Maison >Java >javaDidacticiel >Comment convertir des caractères Unicode en alphabet anglais en Java ?
Conversion de caractères Unicode en alphabet anglais
Dans le vaste domaine d'Unicode, avec des milliers de caractères à notre disposition, nous sommes souvent confrontés à des défis dans convertir des caractères similaires en leurs équivalents de l'alphabet anglais correspondants. De ҥ à H, Ѷ à V et Ȳ à Y, la tâche de classification et de conversion de ces caractères peut être ardue.
Pour résoudre ce problème en Java, nous pouvons exploiter la classe Normalizer pour effectuer la conversion nécessaire. . La méthode Normalizer.normalize() accepte une chaîne et applique la forme de normalisation souhaitée, en particulier Normalizer.Form.NFD (Normalization Form Canonical Decomposition).
Une fois la chaîne normalisée, nous pouvons utiliser des expressions régulières pour la supprimer. les signes diacritiques combinés qui distinguent les caractères accentués de leurs homologues de base. Le code Java suivant illustre cette approche :
import java.text.Normalizer; import java.util.regex.Pattern; public class UnicodeConverter { public static String deAccent(String str) { String nfdNormalizedString = Normalizer.normalize(str, Normalizer.Form.NFD); Pattern pattern = Pattern.compile("\p{InCombiningDiacriticalMarks}+"); return pattern.matcher(nfdNormalizedString).replaceAll(""); } public static void main(String[] args) { String accentedText = "tђє Ŧค๓เℓy"; System.out.println(deAccent(accentedText)); // Output: the Family } }
Grâce à cette technique, nous pouvons convertir efficacement une large gamme de caractères accentués en leurs représentations de l'alphabet anglais correspondantes, permettant ainsi des tâches transparentes de traitement et de manipulation de texte.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!