擅长:python、mysql、java
<p>我也遇到了类似的问题,所以我决定用一个可能的解决方案来取代这个旧帖子。我的语法在TestRig上运行很快,但是在python3上运行得非常慢。在</p>
<P>在我的例子中,错误是我用来生成一行注释的非贪婪令牌(C/C++中的双斜线,在我的情况下是'%'):</p>
<pre><code>TKCOMM : '%' ~[\r\n]* -> skip ;
</code></pre>
<p>这在某种程度上得到了sharwell在本次讨论中的帖子的支持:<a href="https://github.com/antlr/antlr4/issues/658" rel="nofollow">https://github.com/antlr/antlr4/issues/658</a></p>
<blockquote>
<p>When performance is a concern, avoid using non-greedy operators, especially in parser rules.</p>
</blockquote>
<p>为了测试这个场景,您可能需要从语法中删除非贪心的规则/标记。在</p>