替换python中的撇号短语

替换python中的撇号短语,第1张

概述我正在使用 python来清理给定的句子.假设我的句子是: What's the best way to ensure this? 我想转换: What's -> What is 同样的, must've -> must have 此外,动词为原始形式, told -> tell 单数到复数,等等. 我正在探索textblob.但并非以上所有都可以使用它. 对于第一个问题,没有一个直接模块为你做这 我正在使用 python来清理给定的句子.假设我的句子是:

What's the best way to ensure this?

我想转换:

What's -> What is

同样的,

must've -> must have

此外,动词为原始形式,

told -> tell

单数到复数,等等.

我正在探索textblob.但并非以上所有都可以使用它.

解决方法 对于第一个问题,没有一个直接模块为你做这个,所以你必须建立自己的,首先你需要一个像这样的收缩字典:

contractions = {"ain't": "am not / are not","aren't": "are not / am not","can't": "cannot","can't've": "cannot have","'cause": "because","Could've": "Could have","Couldn't": "Could not","Couldn't've": "Could not have","dIDn't": "dID not","doesn't": "does not","don't": "do not","hadn't": "had not","hadn't've": "had not have","hasn't": "has not","haven't": "have not","he'd": "he had / he would","he'd've": "he would have","he'll": "he shall / he will","he'll've": "he shall have / he will have","he's": "he has / he is","how'd": "how dID","how'd'y": "how do you","how'll": "how will","how's": "how has / how is","i'd": "I had / I would","i'd've": "I would have","i'll": "I shall / I will","i'll've": "I shall have / I will have","i'm": "I am","i've": "I have","isn't": "is not","it'd": "it had / it would","it'd've": "it would have","it'll": "it shall / it will","it'll've": "it shall have / it will have","it's": "it has / it is","let's": "let us","ma'am": "madam","mayn't": "may not","might've": "might have","mightn't": "might not","mightn't've": "might not have","must've": "must have","mustn't": "must not","mustn't've": "must not have","needn't": "need not","needn't've": "need not have","o'clock": "of the clock","oughtn't": "ought not","oughtn't've": "ought not have","shan't": "shall not","sha'n't": "shall not","shan't've": "shall not have","she'd": "she had / she would","she'd've": "she would have","she'll": "she shall / she will","she'll've": "she shall have / she will have","she's": "she has / she is","should've": "should have","shouldn't": "should not","shouldn't've": "should not have","so've": "so have","so's": "so as / so is","that'd": "that would / that had","that'd've": "that would have","that's": "that has / that is","there'd": "there had / there would","there'd've": "there would have","there's": "there has / there is","they'd": "they had / they would","they'd've": "they would have","they'll": "they shall / they will","they'll've": "they shall have / they will have","they're": "they are","they've": "they have","to've": "to have","wasn't": "was not","we'd": "we had / we would","we'd've": "we would have","we'll": "we will","we'll've": "we will have","we're": "we are","we've": "we have","weren't": "were not","what'll": "what shall / what will","what'll've": "what shall have / what will have","what're": "what are","what's": "what has / what is","what've": "what have","when's": "when has / when is","when've": "when have","where'd": "where dID","where's": "where has / where is","where've": "where have","who'll": "who shall / who will","who'll've": "who shall have / who will have","who's": "who has / who is","who've": "who have","why's": "why has / why is","why've": "why have","will've": "will have","won't": "will not","won't've": "will not have","would've": "would have","wouldn't": "would not","wouldn't've": "would not have","y'all": "you all","y'all'd": "you all would","y'all'd've": "you all would have","y'all're": "you all are","y'all've": "you all have","you'd": "you had / you would","you'd've": "you would have","you'll": "you shall / you will","you'll've": "you shall have / you will have","you're": "you are","you've": "you have"}

然后根据字典编写一些代码来修改你的文本,如下所示:

text="What's the best way to ensure this?"for word in text.split():    if word.lower() in contractions:        text = text.replace(word,contractions[word.lower()])print(text)

关于改变动词时态的第二个问题,nodebox’s linguistics library非常受欢迎,强烈推荐用于此类任务.在downloading their zip file之后,解压缩并将其复制到python的site-package目录.完成后,你可以这样写:

import enfor word in text.split():    if en.is_verb(word.lower()):        text = text.replace(word,en.verb.present(word.lower()))print text

注意:此库仅适用于Python 2,因为它尚不支持python 3.

总结

以上是内存溢出为你收集整理的替换python中的撇号/短语全部内容,希望文章能够帮你解决替换python中的撇号/短语所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1194320.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存