【问题标题】:Is there a python spelling correction library that corrects capitalisation?是否有一个 python 拼写更正库可以更正大写?
【发布时间】:2021-11-23 16:12:27
【问题描述】:

我的字符串拼写正确,但全部小写(第一个字符除外),我想更正大写(英文 - 所以基本上只是事物的名称......)。我尝试了 pyspellcheck、autocorrect 和 symspellpy,它们不考虑大写 afaik。

例如,字符串'And then we went to see frank from england to have a beer with him.' 应更正为'And then we went to see Frank from England to have a beer with him.'

你知道任何可以做到这一点的图书馆吗?

【问题讨论】:

  • 请在您的问题中添加详细信息,就目前而言,肯定会很接近。一个好的示例将有助于
  • 我添加了一个例子现在更清楚了吗?
  • 你只能这样做 a = "today is my day" print(a.title())
  • @EhsanRahi 不,不是这样,我想要对大小写进行拼写检查。请看示例。

标签: python python-3.x spell-checking capitalization autocapitalize


【解决方案1】:

你可以用 spaCy 做到这一点:

import spacy
nlp=spacy.load('en_core_web_md')


def capitalize_ent(text):
    title_text=text.title()
    print(text)
    doc=nlp(title_text)
    words=[]
    for x in doc:
        if nlp(x.text).ents:
            words.append(x.text)
    for word in words:
        text=text.replace(word.lower(),word)
    return text
            

别忘了下载 spaCy 语言模型:

python -m spacy download en_core_web_md

【讨论】:

    猜你喜欢
    • 2013-07-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-16
    • 2019-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多