我是Antlr的新手,需要为遗留汇编代码编写一个解析器,该代码可能包含固定列中的行号.此外,某些列具有重要意义 - 无论是注释,延续还是等等.如何检测这些?
举一些例子:
000001 proc proc1
000002*评论
* comment without line numbers
continuation marker set ==> X
Arbitrary text as continuation
Run Code Online (Sandbox Code Playgroud)
谢谢xAn
在编写 Antlr 语法来解析 Cobol 源代码时,我遇到过类似的情况。Cobol 具有一些与您类似的特征(固定列、列显着等)。
我为这个问题找到的唯一解决方案:“预处理”输入并将其转换为 Antlr 可以毫无问题地解析的内容!
例如:在 Cobol 中,第 7 列中的星号表示该行是注释行;我将其(星号本身)更改为“>>”,并在语法中指定“>>”意味着该行是注释行。
| 归档时间: |
|
| 查看次数: |
97 次 |
| 最近记录: |