-1

pokerhandhistory ファイル、ログ ファイルを解析する必要があります。

内容は次のようなものです。

プレーヤー名は $100 を賭けます

必要なのは、名前、アクション (トークンとして)、および金額だけです。

問題は、名前にアクションとスペースを含めることもできることです。

例: theplayer bets bet $100

GoldParser と ANTLR で動作させようとしました。取れない...

Boost::spirit では問題なく動作します。唯一の悪い点は、ポーカー文法全体のコンパイル時間が素晴らしく、20 分かかることです。

コンパイル時間に関しては、ANTLR (C-Api) と GoldParser の方が少し優れていることがわかりました。

誰かが Goldparser で情報を取得する方法についてのヒントを投稿できればうれしいです。

どうもありがとうございました!!!!

4

2 に答える 2

2

あなたはこのように行くことができます:

  1. 最後の$記号を見つける
  2. その前にあるはずの「bets」サブストリングの先頭を探します
  3. プレーヤー名は、その位置の前の部分文字列です。

複雑なパーサーに入る必要はありません。形式がそれだけの場合は、手作業で行ってください。

于 2011-07-20T15:31:43.460 に答える
2

どちらも使用できます (ANTLR または Goldparser)。しかし、形式が非常に単純な場合 ( USERNAME ACTION ... AMOUNT)、本格的なパーサーは必要ないと思います。ファイルを行ごとに処理し、空白で分割することも考慮してください。

于 2011-07-20T15:30:51.393 に答える