Python PLY разбирает вложенные соответствующие скобки - PullRequest
0 голосов
/ 29 июня 2019

Я анализирую с PLY .Мне нужен токен для самой большой группы совпадающих скобок, которая содержит вложенные совпадающие скобки.

Например:

  1. a(b|c(d|e)) должно соответствовать всему после того, как 'a'

  2. a(b)(c)(d) не должно совпадать

С модулем regex это может быть возможно с чем-то вроде: \([^()]*\(((?>[^()]+|(?R))*)\)[^()]*\)

Но я считаю, что PLY использует re, который не имеет рекурсии,Есть ли какой-то другой способ, которым я могу сделать это без необходимости вручную анализировать токен в моих p_ (синтаксических) функциях?

...