您的位置:首页 > 编程语言 > Java开发

java语法分析器介绍

2005-12-14 19:57 316 查看
Java开源 语法分析器类别列表网址:http://www.open-open.com/55.htm
JavaCC
Java Compiler Compiler 是一个用JAVA开发的最受欢迎的语法分析生成器。这个分析生成器工具可以读取上下文无关且有着特殊意义的语法并
把它转换成可以识别且匹配该语法的JAVA程序。它还提供JJTree等工具来帮助我们建立语法树。JavaCC plug-in:一个用于辅助JavaCC应用程
序开发的Eclipse插件.
ANTLR
ANTLR(ANother Tool for Language Recognition)它是这样的一种工具,它可以接受词文法语言描述,并能产生识别这些语言的语句的程序。作
为翻译程序的一部分,你可以使用简单的操作符和动作来参数化你的文法,使之告诉ANTLR怎样去创建抽象语法树(AST)和怎样产生输出。ANTLR
知道怎样去生成识别程序,语言包括Java,C++,C#.
Chaperon
Chaperon是一个可以把有结构的Text转换成XML.它包括一个强大的LALR(1)解析器来解析Text和一个可以用来创建XML文档的Tree builder。
JFlex
JFlex是一个Java的词法/语法分析生成器。
SableCC
SableCC是一个用来生成编译器和分析器的面向对象的框架。这个框架是基于两个基本的设计决策:首先是利用面向对象技术自动构建精确的典
型的抽象语法树。第二,这个框架使用经过扩展的Visitor访问者模式来生成tree-walker类。
Beaver
Beaver是一个LALR(1) 语法分析生成器。它读取一些上下文无关的语法并把它转换成一个利用该语法描述的语言分析器(一个Java类)。
JTopas
JTopas这个开源项目提供了一个很小,容易使用的用来分析特殊Text数据的Java类包。这些数据可以是来自包含一些注释的简单配置文件,
HTML,XML,RTF stream,和来自其程序语言的源代码等。有时需要解释所有的Text数据,而有时只需解释其中重要的部分。
runcc
runcc是一种在运行时生成parsers和lexers的语法分析生成器。它自带一个Java和XML分析器的例子。
CUP
一个LALR(Lookahead Left to Right Parsing)语法/词法分析生成器.

从网址https://javacc.dev.java.net/servlets/ProjectDocumentList下载javacc-4.0beta1.zip
然后解压缩文件javacc-4.0beta1.zip到javacc-4.0beta1
注意它不支持jdk1.2
支持>=Version jdk1.4
你需要安装jdk1.4,一般把jdk1.4的相关文件放在c:/jdk1.4目录下
将javacc-4.0beta1文件夹复制到c:/jdk1.4目录下,然后需要把javacc-4.0beta1文件夹中的所有文件复制到c:/jdk1.4/bin目录下
在环境变量中-->Adminstrator的用户变量: path为: .;c:/jdk1.4/bin
classpath为: c:/jdk1.4/lib/tools.jar;c:/jdk1.4/lib/dt.jar
javaCC使用的各种语言的Grammar 文件在网址http://www.cobase.cs.ucla.edu/pub/javacc/有很多 ,
例如Ada, ASN.1,C,C++,C++ to Html, DCL, DU, DTD, EcmaScript, Express, GDMO, HEL,
HTML, IDL, InfoSapient, Java, Java to HTML, JavaScript, JEP, Oberon, ODL, OQL, PGN,
Python, PHP, Quilt, Rational Rose, RMAIL, RPC, RTF, Scheme, Simkin, SPL, SpecC, SQL,
STEP, StruQL, VHDL, VRML, Visual Basic, XPath/XSLT pattern, XPath/XSLT, XML, XML, XQuery
CommandLine as follows:
javacc Grammar.jj
javac *.java
java Grammar
Ctrl+c结束输入状态 退出到jdk1.4/bin目录下

javac的语法文件:javacc-4.0beta1/examples/JavaCCGrammar/JavaCC.jj
你需要把JavaCC.jj文件名改成:JavaCCParser.jj
c:/jdk1.4/bin/javajj JavaCCParser.jj
c:/jdk1.4/bin/javac *.java
c:/jdk1.4/bin/java JavaCCParser
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: