input:
= ab zx =
abc inline
XXX
== cd ==
zef
antlr syntax:
grammar bestpaper;
options {
output=AST;
ASTLabelType=CommonTree;
}
chapter
: (paragraph NEWLINE+)+;
paragraph
: heading NEWLINE+ content | heading;
heading
: SPACE? (heading1 | heading2 | heading3 | heading4 | heading5 | heading6) SPACE?;
heading1
: H1 SPACE title SPACE H1;
heading2
: H2 SPACE title SPACE H2;
heading3
: H3 SPACE title SPACE H3;
heading4
: H4 SPACE title SPACE H4;
heading5
: H5 SPACE title SPACE H5;
heading6
: H6 SPACE title SPACE H6;
title
: (WORD SPACE)* WORD;
content
: (line NEWLINE)* line;
line
: SPACE? (WORD SPACE)* WORD SPACE? | SPACE;
H1
: '=';
H2
: '==';
H3
: '===';
H4
: '====';
H5
: '=====';
H6
: '======';
INT
: ('1'..'9')('0'..'9')* | '0';
NEWLINE
: '\r'? '\n' ;
SPACE
: (' ' | '\t')+;
WORD
: (~('\r' | '\n' | ' ' | '\t'))+;
parse tree:
- 大小: 11.9 KB
分享到:
相关推荐
总之,ANTLR是构建解析器的强大工具,而antlr-2.7.7.jar和antlr-2.7.6.jar是ANTLR的不同版本,它们以JAR文件的形式提供,用于Java项目中解析和处理结构化文本。选择使用哪个版本应根据项目的需求、兼容性和稳定性来...
ant-antlr-1.6.3.jarant-antlr-1.6.3.jarant-antlr-1.6.3.jarant-antlr-1.6.3.jar
"antlr-2.7.7.jar.zip"这个压缩包是ANTLR 2.7.7版本的Java实现,包含了运行ANTLR工具和使用其生成的解析器所需的所有类。在Java项目中正确引用这个jar包,就能利用ANTLR的能力来解析和处理自定义语言的语法。
antlr-3.5.2-complete.jar
总结来说,ANTLR-2.7.7.jar是一个用于生成解析器和词法分析器的工具,它是ANTLR 2.7.7版本的实现,适用于Java平台。它可以帮助开发者快速构建和维护语言解析相关的项目,支持多种语法和解析策略,但可能缺乏较新版本...
Spring项目中如果从"http://www.antlr.org/download"下载antlr-3.1.3.jar会遇到java.lang.NoSuchFieldError: ruleMemo异常,从从 ...下载则不会 这个包就是从这里下载的
spring-framework-3.0.0.M3 com.springsource.org.antlr-3.0.1.jar
antlr-4.8-complete.jar
赠送jar包:antlr4-runtime-4.7.jar; 赠送原API文档:antlr4-runtime-4.7-javadoc.jar; 赠送源代码:antlr4-runtime-4.7-sources.jar; 赠送Maven依赖信息文件:antlr4-runtime-4.7.pom; 包含翻译后的API文档:...
总结起来,"ant-antlr-1.6.4.jar.zip"是一个集成Ant和ANTLR的实用工具包,它为Java开发者提供了便利的构建和解析功能。通过理解和掌握Ant的任务驱动机制,以及ANTLR的语法规则生成原理,开发者可以更高效地处理复杂...
We reserve no legal rights to the ANTLR--it is fully in the public domain. An individual or company may do whatever they wish with source code distributed with ANTLR or the code generated by ANTLR...
对于下载的"antlr-intellij-plugin-v4-1.14.zip"文件,它是2020年版本的ANTLR Intellij Plugin v4.14的备份。这意味着它可以安装到IntelliJ IDEA中,为用户提供ANTLR 4的支持。安装步骤通常包括解压缩文件,将解压后...
5. `com.springsource.antlr-2.7.7.jar`:ANTLR是一个强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件。 6. `com.springsource.net.sf.cglib-2.2.0.jar`:CGLIB是一个代码生成库,用于扩展...
赠送jar包:antlr-runtime-3.4.jar; 赠送原API文档:antlr-runtime-3.4-javadoc.jar; 赠送源代码:antlr-runtime-3.4-sources.jar; 赠送Maven依赖信息文件:antlr-runtime-3.4.pom; 包含翻译后的API文档:antlr-...
赠送jar包:antlr4-runtime-4.2.jar; 赠送原API文档:antlr4-runtime-4.2-javadoc.jar; 赠送源代码:antlr4-runtime-4.2-sources.jar; 赠送Maven依赖信息文件:antlr4-runtime-4.2.pom; 包含翻译后的API文档:...
4. `com.springsource.antlr-2.7.7.jar`:ANTLR是一个强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件,Hibernate使用它解析HQL。 5. `com.springsource.net.sf.cglib-2.2.0.jar`:CGLIB是一...
赠送jar包:antlr-runtime-3.5.jar; 赠送原API文档:antlr-runtime-3.5-javadoc.jar; 赠送源代码:antlr-runtime-3.5-sources.jar; 赠送Maven依赖信息文件:antlr-runtime-3.5.pom; 包含翻译后的API文档:antlr-...
org.antlr org.aopalliance javax.activation javax.annotation javax.ejb javax.el javax.faces javax.inject javax.jdo javax.jms javax.mail javax.persistence javax.portlet javax.resource javax.servlet ...