概率拼写检查器

probspellchecker的Python项目详细描述


python中的概率拼写检查器

基于编辑距离(levenshtein ish)和词频的拼写检查器 在训练语料库中。

For theoretical background, see Peter Norvig's article,

https://norvig.com/spell-correct.html

配有一本从德国维基百科文章中训练出来的字典。

用法:

import json
import re
import probspellchecker

spellchecker = probspellchecker.ProbabilisticSpellChecker(
    word_counts=json.load(open("dictionary_dewiki_full10plus.json")),
    word_whitelist=["my", "custom", "wordlist"],
)

text = "lorem ipsum whatever"
for word in re.findall(r"\w+", text):
    correction = spellchecker.correction(word.lower())
    if correction:
        print(correction)
    else:
        print(word)

单词计数就是这样,一个带有单词到计数映射的dict。建立你的 自己的字典,请参阅probdict-from-dewiki.py和probdict-from-text.py。 您还可以指定一个白名单,其中的单词应该被 拼写检查器,如果你的名字不在字典里,它很有用。

如果你的语言中有一些特殊的字符,比如德语的变音 可能需要传递一个附加的字符集参数,该参数是 所有允许的你的语言字符,给概率拼写检查器。 然后用它生成候选词。

日志记录

如果日志记录让您恼火,请将其关闭:

spell_log = logging.getLogger("probspellchecker")
spell_log.setLevel(logging.ERROR)  # log only errors

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java访问私有字段而不使用getter方法?   使用PowerMockito在JavaEWSAPI中模拟测试拉订阅   启动活动时未保存java首选项并清除变量   java如何在servlet中检索子域?斯普林有帮手吗   java使用Docker从命令行构建Android项目   java Android,ActionBar后退按钮(setDisplayHomeAsUpEnabled(true))重新创建父活动   java在重用FileOutputStream时应该关闭流吗?   java使用RESTAPI将文件上载到s3 bucket   Java SOAP Web服务应用程序中的mysql用户登录方法不工作   java使用多个数字计算百分比并转换为长   java Android SQLiteDatabase查询忽略空格   java如何在Javafx中比较两个字段文本   java错误:未设置java_HOME,在Eclipse安装后找不到   java在安卓中保存对象   java如何使用jaxws从返回List<Object>的服务中检索值   java Google OAuth2 JWT令牌验证异常   SpringMVC中的JavaUTF8编码问题,当从JSP表单发送POST请求中的越南语信件时   java从webview重定向到安卓应用程序   JUnit 5中多个扩展的java顺序