Problème :
En Python, lors de la conversion d'une chaîne contenant des signes diacritiques, tels que "á, " nous observons des incohérences. La longueur de la chaîne est de 1 ou 2 caractères, selon que le signe diacritique est représenté comme un point de code unique ou une séquence de points de code composites.
Solution :
Pour garantir la cohérence normalisation, utilisez la fonction .normalize() du module unicodedata. Cette fonction convertit une chaîne Unicode en sa représentation Normal Form Composed (NFC). Le formulaire NFC combine des caractères composites comme "á" en un seul point de code, éliminant ainsi l'incohérence dans la longueur de la chaîne.
import unicodedata # Convert to NFC form to combine diacritics char = "á" normalized_char = unicodedata.normalize('NFC', char) print(len(normalized_char)) # Output: 1 print(unicodedata.name(normalized_char)) # Output: LATIN SMALL LETTER A WITH ACUTE
Formulaires de normalisation :
Le module unicodedata propose différents formulaires de normalisation , chacun avec une approche différente de la représentation des personnages :
Considérations supplémentaires :
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!