Python - Controllo ortografico

Il controllo ortografico è un requisito fondamentale in qualsiasi elaborazione o analisi del testo. Il pacchetto pythonpyspellchecker ci fornisce questa funzionalità per trovare le parole che potrebbero essere state scritte male e suggerire anche le possibili correzioni.

Innanzitutto, dobbiamo installare il pacchetto richiesto utilizzando il seguente comando nel nostro ambiente python.

pip install pyspellchecker

Ora vediamo di seguito come il pacchetto viene utilizzato per evidenziare le parole scritte in modo errato e per dare alcuni suggerimenti su possibili parole corrette.

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))

Quando eseguiamo il programma sopra, otteniamo il seguente output:

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

Che tiene conto del maiuscolo o minuscolo

Se usiamo Let al posto di let, questo diventa un confronto tra maiuscole e minuscole della parola con le parole più vicine nel dizionario e il risultato ora sembra diverso.

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))

Quando eseguiamo il programma sopra, otteniamo il seguente output:

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'}