在Python中从基部切除前缀
我想从词根中切分出前后缀。我用下面的命令尝试了后缀,结果对于“dishes”是可以的。但是当我想用前缀(比如“undo”)时,怎么在Python中定义这个前缀,以便得到“un-do”这个结果呢?
>>> def stem(word):
for suffix in ['ing', 'lity', 'es']:
if word.endswith(suffix):
return word[:-len(suffix)]
return word
>>> re.findall(r'^(.*)(ing|lity|es)$', 'dishes')
[('dish', 'es')]
1 个回答
2
那么,为什么不以你之前的方式使用正则表达式呢?
>>> re.findall(r'^(un|ir)(.*)$', 'undo')
[('un', 'do')]