【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:...|...|...;
相关推荐
如意猴7 小时前
【C++】007 C/C++ 内存管理机制、malloc与new的区别及模板初阶
java·c++·算法
可乐鸡翅yeah_7 小时前
HLS 分片过期清理,直播旧 TS 分片磁盘爆满问题处理
java·后端·spring·m3u8·m3u8在线·音视频在线播放
专业程序开发源7 小时前
SSM校园拍摄交流服务平台36936-计算机课程设计、毕业设计
java·spring boot·后端·python·elasticsearch·php·课程设计
用户094248568037 小时前
第23章:OpenJDK逃逸分析、标量替换与锁优化
java·jvm
wuminyu7 小时前
LockStack在虚拟线程Mount和Unmount拷贝过程剖析
java·linux·c语言·jvm·c++
樱花落木兰8 小时前
分布式登录实战:Session 会话共享改造,Redis 存储用户登录状态
java·javascript·数据库·redis·分布式·缓存
HAHAXX88 小时前
电商RPA批量上架通用方案:一套流程如何同时跑通拼多多、抖店、淘宝和跨境平台
java·运维·rpa
\光辉岁月/8 小时前
3.java运算符
java·开发语言
mjhcsp8 小时前
DeepSeek V4.1 Flash 批量处理效能实测
java·前端·数据库