Python PLY解析嵌套的匹配括号

时间:2019-06-29 02:54:21

标签: python parsing ply

我正在使用PLY进行解析。我想要一个用于最大匹配括号组的令牌,其中包含嵌套的匹配括号。

例如:

  1. a(b|c(d|e))应该匹配'a'之后的所有内容

  2. a(b)(c)(d)不匹配

使用regex模块可以通过以下方式实现: \([^()]*\(((?>[^()]+|(?R))*)\)[^()]*\)

但是我相信PLY正在使用re,它没有递归。还有其他方法可以实现此目的,而不必自己在p_(解析)函数中自己解析令牌吗?

0 个答案:

没有答案