【ANTLR】核心语法标记

【ANTLR】核心语法标记

    • [1. 匹配词法符号、规则引用或者子规则](#1. 匹配词法符号、规则引用或者子规则)
    • [2. 匹配一列词法规则](#2. 匹配一列词法规则)
    • [3. 匹配某一个分支规则](#3. 匹配某一个分支规则)
    • [4. 表示0次或者多次匹配x规则,格式是x?](#4. 表示0次或者多次匹配x规则,格式是x?)
    • [5. 表示0次或者多次匹配,格式是 x *](#5. 表示0次或者多次匹配,格式是 x *)
    • [6. 匹配x一次或者多次,格式是x+](#6. 匹配x一次或者多次,格式是x+)
    • [7. 定义规则格式](#7. 定义规则格式)
    • [8. 定义多个备选分支的规则](#8. 定义多个备选分支的规则)

简单来说,就是如何定义单个词法规则,下面是最小单位的规则定义

1. 匹配词法符号、规则引用或者子规则

如INT

java 复制代码
INT:[0-9]+;

2. 匹配一列词法规则

如line,就是有LEFT、value、RIGHT组成

java 复制代码
line:LEFT value(','value)* RIGHT;

3. 匹配某一个分支规则

表示value可以匹配INT、line、INT'+'INT规则,之前关系是或

java 复制代码
value:INT
      | line
      | INT'+'INT
      ;

4. 表示0次或者多次匹配x规则,格式是x?

5. 表示0次或者多次匹配,格式是 x *

6. 匹配x一次或者多次,格式是x+

7. 定义规则格式

表示定义规则r

java 复制代码
r:...;

8. 定义多个备选分支的规则

表示定义多个备选分支的规则r

java 复制代码
r:...|...|...;
相关推荐
Mr.朱鹏1 分钟前
SQL深度分页问题案例实战
java·数据库·spring boot·sql·spring·spring cloud·kafka
小张快跑。5 分钟前
【Java企业级开发】(十一)企业级Web应用程序Servlet框架的使用(上)
java·前端·servlet
星星不打輰5 分钟前
SSM项目--SweetHouse 甜蜜蛋糕屋
java·spring·mybatis·ssm·springmvc
Knight_AL10 分钟前
Java 线程池预热(Warm-up)实战:开启与不开启到底差多少?
java·开发语言
爬山算法12 分钟前
Netty(15)Netty的线程模型是什么?它有哪些线程池类型?
java·后端
C++业余爱好者23 分钟前
公司局域网访问外网的原理
java
@淡 定1 小时前
异常处理最佳实践
java
一起养小猫1 小时前
LeetCode100天Day1-字符串匹配与Z字形变换
java·leetcode
白宇横流学长1 小时前
基于SpringBoot实现的冬奥会科普平台设计与实现【源码+文档】
java·spring boot·后端
APIshop1 小时前
Java爬虫1688详情api接口实战解析
java·开发语言·爬虫