首页 文章

无法匹配ANTLR4中的简单赋值

提问于
浏览
0

我有一个匹配的输入模式:

identifier=apple-packs/apple-packages-extension/albama_togo_air_extension

我在ANTLR4中的语法定义如下:语法MyDSL;

@lexer::members {
    public static final int WHITESPACE = 1;
    public static final int COMMENTS = 2;
}
locationReference
    : ID '=' genericstring ';';

ID:LETTER (LETTER | [0-9])*;
genericstring:(.)+?;

面临的问题:第1:16行令牌识别错误:' - '第1:22行令牌识别错误:'/'第1:28行令牌识别错误:' - '...我想我的语法无法通过解析器规则匹配特殊字符:genericstring :( . )?;我也理解“ . ”意味着任何角色 .

1 回答

  • 0

    在词法分析器规则 . 匹配任何字符 . 在解析器规则中, . 匹配任何标记 .

    注意,词法分析器会生成 token recognition 错误;在这种情况下,因为词法分析器没有匹配 - 的规则 .

相关问题