ANTLR教程(一)简介

antlr参考资料

  1. The Definitive ANTLR 4 Reference.pdf
  2. 基本概念 · ANTLR 4简明教程

antlr环境搭建

intellij java编程环境下的antlr编程环境

  1. 安装intellij java编程环境
    官网下载开发版
  2. 安装java sdk
    intellij新建工程,提示sdk,点击进入下载路径。下载完成后,选择Java sdk的安装路径。
  3. 从官网下载antlr intellij插件
  4. intellij中安装 antlr插件
    File->Settings->Plugins->从磁盘选择
    antlr v4 使用指南连载2——准备环境 - Laud - 博客园
    在IDEA中使用ANTLR4教程 - sherrywong1220的博客 - 博客频道 - ****.NET
    Antlr v4入门教程和实例 - 西代零零发 - 博客频道 - ****.NET

antlr4的优点

  1. 比antrl3等之前的版本,可以处理直接左递归的文法,antl4会自动将直接左递归文法转换为非左递归的等价形式,但是仍然不能处理间接左递归文法。
    例如, exp : exp ‘-’ exp,之前的版本需要将直接左递归文法转换为右递归文法
  2. 使用ALL( * ) LL(*)技术
  3. 自动生成语法树遍历的类 walker
  4. 将语法动作从文法产生式中解耦出来。因此,可以将文法产生式在不同的语言中进行重用。

antlr前端分析过程

ANTLR教程(一)简介
1. 词法分析生成token流
2. 语法分析生成语法树