Conversion efficace de mots numériques en nombres entiers avec des dictionnaires
Dans de nombreuses situations, nous rencontrons le besoin de convertir des mots numériques écrits (par exemple, "un ") dans leurs entiers correspondants (par exemple, 1). Les bibliothèques ou les classes peuvent simplifier cette tâche.
Une approche consiste à utiliser un dictionnaire (appelé numwords dans le code fourni) pour mapper les mots numériques à leurs représentations entières. Ce dictionnaire est configuré uniquement lors du premier appel de fonction.
Lorsque le code analyse le numéro de texte d'entrée (par exemple, "sept milliards cent millions trente et un mille trois cent trente-sept"), il utilise le dictionnaire de mots-clés pour traduisez chaque mot dans sa valeur entière.
Par exemple, "sept" correspond à 7, "milliard" à 1000000000, et "un" à 1. Le code accumule ces valeurs, en tenant compte d'échelles telles que "cent" et "mille".
La fonction text2int convertit efficacement le textnum d'entrée en un résultat entier, gérant tous les mots numériques courants efficacement. En tirant parti d'un dictionnaire, cette approche minimise le besoin d'instructions de cas longues ou de modèles d'expression régulière complexes, ce qui en fait une solution robuste pour la conversion de mots numériques.
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!