Si vous pouviez trouver une source de correspondance entre l'orthographe et la prononciation des mots, par exemple :
"honest":"on-ist"
"horrible":"hawr-uh-buhl, hor-"
Vous pourriez baser votre décision sur le premier caractère de la chaîne de prononciation épelée. Pour des raisons de performances, vous pourriez peut-être utiliser une telle consultation pour pré-générer des ensembles d'exceptions et utiliser ces ensembles de consultation plus petits pendant l'exécution.
Modifié pour ajouter :
! !! - Je pense que vous pourriez utiliser ceci pour générer vos exceptions : http://www.speech.cs.cmu.edu/cgi-bin/cmudict
Tout ne sera pas dans le dictionnaire, bien sûr - ce qui signifie que toutes les exceptions possibles ne se retrouveront pas dans vos jeux d'exceptions - mais dans ce cas, vous pourriez simplement choisir par défaut un pour les voyelles/un pour les consonnes ou utiliser une autre heuristique avec de meilleures chances.
(En parcourant le dictionnaire CMU, j'ai été heureux de constater qu'il comprend des noms propres pour les pays et certains autres lieux - il permettra donc de traiter des exemples tels que "un Ukrainien", "un journal USA Today", "une peinture d'inspiration ouralienne").
Modifier une fois de plus pour ajouter : Le dictionnaire CMU ne contient pas les acronymes courants, et vous devez vous préoccuper de ceux qui commencent par s, f, l, m, n, u et x. Mais il existe de nombreuses listes d'acronymes, comme dans Wikipedia, que vous pourriez utiliser pour ajouter aux exceptions.
4 votes
Il faut également tenir compte des abréviations qui peuvent aussi entraîner des confusions sur le "a" ou le "an", comme "une NHL", dont le son de la lettre commence par une voyelle, mais pas si l'abréviation peut être prononcée comme un mot, comme "un dispositif NAS" ou "un événement NASCAR".
5 votes
Gardez également à l'esprit que l'utilisation de a ou an peut dépendre de la prononciation particulière de la variété d'anglais parlée. La prononciation britannique et américaine de herb en est un exemple.
12 votes
@Eric : En effet, mon exemple préféré de cela (ringard aussi) est "SQL". Certaines personnes disent les lettres "SQL", d'autres le prononcent comme le mot "sequel". Chacun obtient un "a" ou un "an" différent. Par exemple, c'est "a sequel statement" ou "it's an S-Q-L statement".
0 votes
Plus difficile encore, les opinions diffèrent même au sein d'un même dialecte anglais ! Ainsi, par exemple, l'anglais officiel (britannique) nous dit que "an hotel" est la structure correcte, mais la plupart des gens utiliseraient "a hotel" dans la conversation de tous les jours. Si vous en écrivez un, il serait très utile pour le reste d'entre nous !
0 votes
Ah... l'"aspirant H". Je me souviens très bien de ma première rencontre avec lui. Un livre d'études sociales de deuxième année intitulé "Une société historique", un livre sur le Williamsburg colonial.
0 votes
Il semble donc qu'il n'y ait pas une seule manière "correcte", et que la règle dépende de votre accent. Il suffit donc de choisir une hurestique simple, et de prétendre que toute bizarrerie est due à l'accent du programme.
0 votes
Comment un correcteur orthographique gère-t-il cela ? Tiennent-ils de grandes listes d'exceptions ?