Python - Vérification orthographique

La vérification de l'orthographe est une exigence de base dans tout traitement ou analyse de texte. Le package pythonpyspellchecker nous fournit cette fonctionnalité pour trouver les mots qui peuvent avoir été mal orthographiés et également suggérer les corrections possibles

Tout d'abord, nous devons installer le package requis à l'aide de la commande suivante dans notre environnement python.

pip install pyspellchecker

Maintenant, nous voyons ci-dessous comment le package est utilisé pour signaler les mots mal orthographiés et faire quelques suggestions sur les mots corrects possibles.

from spellchecker import SpellChecker
spell = SpellChecker()
# find those words that may be misspelled
misspelled = spell.unknown(['let', 'us', 'wlak','on','the','groun'])
for word in misspelled:
    # Get the one `most likely` answer
    print(spell.correction(word))
    # Get a list of `likely` options
    print(spell.candidates(word))

Lorsque nous exécutons le programme ci-dessus, nous obtenons la sortie suivante -

group
{'group', 'ground', 'groan', 'grout', 'grown', 'groin'}
walk
{'flak', 'weak', 'walk'}

Sensible aux majuscules et minuscules

Si nous utilisons Let à la place de let, cela devient une comparaison sensible à la casse du mot avec les mots correspondants les plus proches dans le dictionnaire et le résultat semble différent maintenant.

from spellchecker import SpellChecker
spell = SpellChecker()
# find those words that may be misspelled
misspelled = spell.unknown(['Let', 'us', 'wlak','on','the','groun'])
for word in misspelled:
    # Get the one `most likely` answer
    print(spell.correction(word))
    # Get a list of `likely` options
    print(spell.candidates(word))

Lorsque nous exécutons le programme ci-dessus, nous obtenons la sortie suivante -

group
{'groin', 'ground', 'groan', 'group', 'grown', 'grout'}
walk
{'walk', 'flak', 'weak'}
get
{'aet', 'ret', 'get', 'cet', 'bet', 'vet', 'pet', 'wet', 'let', 'yet', 'det', 'het', 'set', 'et', 'jet', 'tet', 'met', 'fet', 'net'}