擅长:python、mysql、java
<p>通常不能使用Python正则表达式来实现这一点。(.NET正则表达式已扩展为“平衡组”,这就是允许嵌套匹配的原因。)</p>
<p>然而,PyParsing对于这类事情来说是一个非常好的包:</p>
<pre><code>from pyparsing import nestedExpr
data = "( (a ( ( c ) b ) ) ( d ) e )"
print nestedExpr().parseString(data).asList()
</code></pre>
<p>输出为:</p>
<pre><code>[[['a', [['c'], 'b']], ['d'], 'e']]
</code></pre>
<p>有关PyParsing的详细信息:</p>
<ul>
<li><a href="http://pyparsing.wikispaces.com/Documentation" rel="noreferrer">http://pyparsing.wikispaces.com/Documentation</a></li>
</ul>