【Antlr】Antlr属性和动作-识别关键字不固定的语句

82 篇文章 9 订阅 ¥29.90 ¥99.00
本文介绍如何使用ANTLR处理动态关键字的编程语言,通过在语法中嵌入动作来识别和转换词法符号类型。示例展示了如何在词法分析阶段检查关键字并根据Map映射设置词法符号类型,确保正确区分关键字和标识符。
摘要由CSDN通过智能技术生成

在这里插入图片描述

1.概述

1.概述
上一篇文章: 【Antlr】Antlr属性和动作-访问词法符号和规则的属性

出自:antlr 权威指南 并且补充

为探究内嵌在词法规则中的动作的相关知识,让我们为一门虛拟的、关键宇会动态变化 (每次运行都不同)的编程语言编写一份语法,这件事情听上去不可思议,但确实是可能的。例如,Java 5新增了一个关键字enum,因此同一个编译器必须能够根据“-version”态地开启和关闭它。

也许,更常见的应用是处理拥有巨量关键宇集合的语言。我们可以令词法分析器分别匹配所有的关键字(作为独立的规则),也可以编写一条ID规则作为分发器,然后在一个关键字列表中查找该规则匹配到的标识符。如果词法分析器发现该标识符是一个关键字,我们可以它的词法符号类型从原先通用的1D类型改成相应的关键字类型。

在着手实现ID规则和关键字查找机制之前,让我们先来编写包含关键字引用的语句规则。


                
  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

九师兄

你的鼓励是我做大写作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值