我正在尝试解析保存在文件中的以下行,您可以看到不是典型的文件格式。 对于包含以下行的此类文件,最好的解析器是什么?文件名是file.make
[Silver: 9]
[Gold: 2]
[Utilize 2x Bolt to Helicopter until 10s]
[Utilize 5x Ruler with 3x Bolt to Car until 7s]
[Utilize Boat until 5s]
[Utilize Tank until 4s]
[Utilize 1x Paint with 2x Bolt with 5x Wrench to Motorcycle until 6s]
我注意到的一件事是,在“使用”一词后面跟随工具/或工具及其名称/名称的数量,“带”一词后跟另一个工具 单词“to”后跟一个车辆,最后一个单词“until”后跟一个时间。黄金和白银只代表成本。
答案 0 :(得分:0)
您应该特别注意不要让流程渗透。您的评论“使用”一词跟随工具/或工具的数量建议您已经这样做。
出血是指当您尝试同时对数据执行多项操作时 - 在您解析和解释的情况下。
在你的情况下,我会建议:
确保您执行上述各项功能单独。不要试图跳过去。
答案 1 :(得分:0)
如果您为它们提供语法规则,有些工具可以自动为您创建解析器。 ANTLR就是一个例子。
但是,您可以自定义语法或从现有示例中删除语法规则,因为您提供的示例将类似于:
S -> RESOURCE: INTEGER
RESOURCE -> Silver, Gold
INTEGER -> [1..1024]