用于解析数字的语法

时间:2016-05-16 07:51:01

标签: parsing antlr antlr4

我有一个文件,其中每一行代表一个串联的字符串系列,如下所示:

302007030064201410241 
30210704006426141
1021070400642614134

每一行都以操作代码开头,每个操作都有一个已知的规则来解析该行的剩余部分。

解析这些数字的好策略是什么?任何开始的样本都会很棒。

1 个答案:

答案 0 :(得分:1)

IMO,如果要解析的所有不同信息看起来像所有令牌都相同,则Antlr不会有用。

手动编写一个小状态机。

  • 循环读取一个数字,直到该数字和前辈产生一个已知的“操作代码”(如果所有代码具有相同的长度,则可能更简单:您可以将其包装在函数中)

    < / LI>
  • 然后根据该代码(例如在交换机中),您可以在专用函数中调用其特定的解码逻辑。

您生成的解析器看起来像递归下降解析器。