Python 以'结尾的英语动词加工;e';
考虑到这些转换,我实现了几个字符串替换Python 以'结尾的英语动词加工;e';,python,nlp,text-processing,stemming,python-textprocessing,Python,Nlp,Text Processing,Stemming,Python Textprocessing,考虑到这些转换,我实现了几个字符串替换 'thou sittest' → 'you sit' 'thou walkest' → 'you walk' 'thou liest' → 'you lie' 'thou risest' → 'you rise' 如果我保持幼稚,那么在这个例子中使用regex查找和替换是可能的,比如ou[a-z]+est 但麻烦出现在以e结尾的英语动词中,因为根据上下文,我需要在某些部分修剪est,在其余部分修剪st 实现这一目标的快速解决方案是什么 可能是最快最脏的:
'thou sittest' → 'you sit'
'thou walkest' → 'you walk'
'thou liest' → 'you lie'
'thou risest' → 'you rise'
如果我保持幼稚,那么在这个例子中使用regex查找和替换是可能的,比如ou[a-z]+est
但麻烦出现在以e
结尾的英语动词中,因为根据上下文,我需要在某些部分修剪est
,在其余部分修剪st
实现这一目标的快速解决方案是什么 可能是最快最脏的:
import nltk
words = set(nltk.corpus.words.words())
for old in 'sittest walkest liest risest'.split():
new = old[:-2]
while new and new not in words:
new = new[:-1]
print(old, new)
输出:
sittest sit
walkest walk
liest lie
risest rise
sittest sit
walkest walk
liest lie
risest rise
rotest rot
更新。稍微不那么快和脏(例如用于rotest
→ 动词rot
,而不是名词rote
):
输出:
sittest sit
walkest walk
liest lie
risest rise
sittest sit
walkest walk
liest lie
risest rise
rotest rot
研究NLTK词干。注意,它还正确地从“sittest”中删除了双辅音!那真是又快又脏。。。我喜欢它。到目前为止,我确实在寻找像word.is_动词()这样的方法。这是最好的。接受。@Kirill这是我在《我在建立一个基于KJV的现代化圣经翻译》中的工作。“你应该得到很多荣誉。”谢谢。谁知道呢,也许有一天我会用到你的项目,因为我正在做一个类似的逐字翻译的工作。