Использование пипарса, чтобы соответствовать конкретному окончанию строки

StackOverflow https://stackoverflow.com/questions/4788535

  •  24-10-2019
  •  | 
  •  

Вопрос

Как я могу построить структуру Python Pyparsing, которая совпадает с определенным окончанием строки. Например, предположим, что я хочу найти все слова, которые заканчиваются «Ing». Следующее не работает:

ing_ending = Word(alphas) + Literal("ing") + White(); ing_ending.parseString("jumping")

Это было бы довольно легко сделать в Python и Regex, но доставляет мне проблемы в пипарсинге.

Это было полезно?

Решение

Просто используйте regex

>>> import pyparsing
>>> ing_ending = pyparsing.Regex(r'(?i)\b[a-z]+ing\b')
>>> ing_ending.parseString("jumping")
(['jumping'], {})
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top