Python - ตรวจการสะกด

การตรวจการสะกดเป็นข้อกำหนดพื้นฐานในการประมวลผลหรือวิเคราะห์ข้อความ แพคเกจ pythonpyspellchecker ให้คุณลักษณะนี้แก่เราในการค้นหาคำที่อาจสะกดผิดและยังแนะนำการแก้ไขที่เป็นไปได้

ขั้นแรกเราต้องติดตั้งแพ็คเกจที่ต้องการโดยใช้คำสั่งต่อไปนี้ในสภาพแวดล้อม python ของเรา

pip install pyspellchecker

ตอนนี้เรามาดูวิธีการใช้แพคเกจเพื่อชี้คำที่สะกดผิดตลอดจนให้คำแนะนำเกี่ยวกับคำที่ถูกต้องที่เป็นไปได้

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

เมื่อเรารันโปรแกรมข้างต้นเราจะได้ผลลัพธ์ดังต่อไปนี้ -

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

กรณีที่สำคัญ

ถ้าเราใช้ Let แทน let นี่จะเป็นการเปรียบเทียบคำตรงตามตัวพิมพ์เล็กและตัวพิมพ์ใหญ่กับคำที่ใกล้เคียงที่สุดในพจนานุกรมและผลลัพธ์ก็ดูแตกต่างกันไป

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

เมื่อเรารันโปรแกรมข้างต้นเราจะได้ผลลัพธ์ดังต่อไปนี้ -

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