2

我有拼写正确但全部小写的字符串(第一个字符除外),我想更正大写(英文 - 所以基本上只是事物的名称......)。我尝试了 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.'.

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

4

1 回答 1

0

你可以用 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
于 2021-10-02T17:26:30.387 回答