-1

我必须解析一些扑克手历史文件、日志文件。

内容是这样的:

玩家名下注 100 美元

我需要的只是名称、操作(作为令牌)和金额。

问题是名称还可以包含操作和空格。

示例:玩家下注 100 美元

我试图让它与 GoldParser 和 ANTLR 一起工作。拿不到...

使用 Boost::spirit 没有问题,它可以工作。唯一不好的是我的整个扑克语法的编译时间太棒了,需要 20 分钟。

我看到 ANTLR (C-Api) 和 GoldParser 在编译时间上要好一些。

如果有人可以发布有关如何使用 Goldparser 获取信息的提示,那就太好了。

非常感谢!!!!

4

2 回答 2

2

它们都可以使用(ANTLR 或 Goldparser)。但是,如果格式如此简单(USERNAME ACTION ... AMOUNT),那么我认为不需要一个成熟的解析器:请注意逐行处理文件并在空白处分割。

于 2011-07-20T15:30:51.393 回答
2

你可以这样:

  1. 查找最后一个 $ 符号
  2. 查找应该在此之前的“bets”子字符串的开头
  3. 玩家名称是该位置之前的子字符串。

无需进入一些复杂的解析器,如果格式就是这样,请手动完成。

于 2011-07-20T15:31:43.460 回答