[英]Objective-C parser poker hand history
我正在为iOS构建一些需要解析扑克手牌历史的软件。 由于我不太了解解析,我希望有人能指出我正确的方向,指点我一些教程,...
我开始用线条分解扑克牌,然后我开始用字符串函数处理每一行。 但是现在我已经看到有可用的解析工具,我可以编写BNF语法。 如果我想要达到性能,这可能是正确的方法,对吧? 但是,我对BNF语法一无所知,以及如何使用它们......任何可以指导我为初学者提供教程的人?
Ow,扑克手牌历史看起来像这样:
PokerStars Game #73611647630: Hold'em No Limit ($0.01/$0.02 USD) - 2012/01/10 17:15:42 CET [2012/01/10 11:15:42 ET]
Table 'Joella VIII' 6-max Seat #1 is the button
Seat 1: S@pphiR ($0.85 in chips)
Seat 2: Pet21 ($1.96 in chips)
Seat 3: derphurp ($2.79 in chips)
Seat 4: -M-A-R-K-qaz ($0.90 in chips)
Seat 5: Rolle55 ($2.47 in chips)
Seat 6: SanderDecler ($2 in chips)
Pet21: posts small blind $0.01
derphurp: posts big blind $0.02
*** HOLE CARDS ***
Dealt to SanderDecler [Jc 2s]
-M-A-R-K-qaz: folds
Rolle55: calls $0.02
SanderDecler: folds
S@pphiR: folds
Pet21: folds
derphurp: checks
*** FLOP *** [2h 3s As]
derphurp: checks
Rolle55: checks
*** TURN *** [2h 3s As] [Kh]
derphurp: bets $0.02
Rolle55: calls $0.02
*** RIVER *** [2h 3s As Kh] [5d]
derphurp: bets $0.02
Rolle55: raises $0.02 to $0.04
derphurp: raises $0.16 to $0.20
Rolle55: raises $0.16 to $0.36
derphurp: folds
Uncalled bet ($0.16) returned to Rolle55
Rolle55 collected $0.47 from pot
*** SUMMARY ***
Total pot $0.49 | Rake $0.02
Board [2h 3s As Kh 5d]
Seat 1: S@pphiR (button) folded before Flop (didn't bet)
Seat 2: Pet21 (small blind) folded before Flop
Seat 3: derphurp (big blind) folded on the River
Seat 4: -M-A-R-K-qaz folded before Flop (didn't bet)
Seat 5: Rolle55 collected ($0.47)
Seat 6: SanderDecler folded before Flop (didn't bet)
BNF将是这样做的理想方式......但是如果你的时间有限并且不想学习太多,我可以建议一个快速而肮脏的解决方案。 使用正则表达式并根据哪个匹配进行切换。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.