python - 如何使用 PyEnchant 更正文本并自动返回更正后的文本

标签 python python-2.7 spell-checking pyenchant

import enchant
import wx
from enchant.checker import SpellChecker
from enchant.checker.wxSpellCheckerDialog import wxSpellCheckerDialog
from enchant.checker.CmdLineChecker import CmdLineChecker

a = "Ceci est un text avec beuacuop d'ereurs et pas snychro"
chkr = enchant.checker.SpellChecker("fr_FR")
chkr.set_text(a)
cmdln = CmdLineChecker()
cmdln.set_checker(chkr)
b = cmdln.run()
c = chkr.get_text()  # returns corrected text
print c

如何在 cmdlinechecker 手动使用 0 的情况下让 c 返回更正后的文本?

程序应遍历包含未更正文本的字符串,更正它,并将其保存在变量中以导出到 MySQL 数据库中。

最佳答案

a = "Ceci est un text avec beuacuop d'ereurs et pas snychro"
chkr = enchant.checker.SpellChecker("fr_FR")
chkr.set_text(a)
for err in chkr:
    print err.word
    sug = err.suggest()[0]
    err.replace(sug)

c = chkr.get_text()#returns corrected text
print c

完全按照我的预期运行。添加过滤器并自动更正所有小文本,使您能够执行关键字搜索等...

我花了 13 个小时才弄明白 ;(

关于python - 如何使用 PyEnchant 更正文本并自动返回更正后的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31026394/

相关文章:

python-2.7 - python argparse 可选参数的默认值

python - 如何将小数点后 1 位舍入为小数点后 2 位

c# - 为什么 SpellCheck 总是将附加词典(utf-8、带 BOM 的 utf-8、UTF-16)中的单词标记为错误?

名称聚类算法

python - 向函数传递参数——从 Python 开始

python - 修改 PySpark 中 RDD 的两个不同列中的数字符号

python-2.7 - 如何在 64 位 Windows 7 上安装 python_ldap?

python - @lru_cache 装饰器过多的缓存未命中

python - 在 Django-Rest-Framework 中,我如何使所有请求(GET 除外)都具有事务性?

user-interface - Flyspell 正确单词的用户交互改进