我有一些字符串拼写正确,但都是小写(除了第一个字符),我想纠正大写(用英语,所以基本上只是事物的名称…)。我尝试了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.'
。
你知道有哪个图书馆能做到这一点吗?
您可以使用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