Нарезка префикса из стебля в Python - PullRequest
1 голос
/ 26 мая 2011

Я хочу нарезать аффиксы из основы. Я попробовал суффиксы с помощью следующей команды, и это было нормально для «блюд». Однако, когда я хочу сделать это с префиксом (например, «отменить»), как я могу определить префикс в 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 голосов
/ 26 мая 2011

Ну, почему бы не использовать регулярные выражения так же, как вы?

>>> re.findall(r'^(un|ir)(.*)$', 'undo')
[('un', 'do')]
...