相关疑难解决方法(0)

ANTLR:如何使用词法分析器解析匹配括号内的区域

我想在我的词法分析器中解析这样的东西:

( begin expression )
Run Code Online (Sandbox Code Playgroud)

其中表达式也用括号括起来。表达式中的内容并不重要,我只想将(begin和 匹配之间的所有内容)作为标记。一个例子是:

(begin 
    (define x (+ 1 2)))
Run Code Online (Sandbox Code Playgroud)

所以令牌的文本应该是

(define x (+ 1 2)))
Run Code Online (Sandbox Code Playgroud)

就像是

PROGRAM : LPAREN BEGIN .* RPAREN;
Run Code Online (Sandbox Code Playgroud)

确实(显然)不起作用,因为一旦他看到“)”,他就认为规则已经结束,但我需要匹配的括号。

我怎样才能做到这一点?

antlr brackets matching lexer

5
推荐指数
1
解决办法
5549
查看次数

标签 统计

antlr ×1

brackets ×1

lexer ×1

matching ×1