首页 > 解决方案 > 重新排列标记是词法分析器的工作吗?

问题描述

我正在为自定义文件格式编写一个解析器,该文件格式由跨越多行的不确定数量的数据结构构成。构成每个单独结构的线条保证是连续的,但可以以任何顺序出现。为了能够组装结构,每行的结构中数据的偏移量被写入该行的开头。

我写了一个词法分析器,它产生 3 种类型的标记:data_offset, data, end_of_line. 但这意味着现在由我的解析器来丢弃data_offsetend_of_line标记,并重新排列行,我觉得这不合适。

我是否应该编写一个只产生标记的词法分析器structure,表示去除偏移量和 EOL 并重新组装成正确顺序的结构?

编辑:

如果有人碰巧偶然发现这篇文章,我最终做的是一个经典的词法分析器/解析器,它简单地标记文件并构建一个 AST,然后我实现了一个“分析器”,可以处理解析的数据,重新排列它等等...... “每个人都为他的行业”

标签: parsingdata-structureslexer

解决方案


推荐阅读