当前位置:  开发笔记 > 编程语言 > 正文

使用RegEx获得Poker Hand得分

如何解决《使用RegEx获得PokerHand得分》经验,为你挑选了2个好方法。

我正在用C#开发扑克游戏.目前我正在尝试使用RegEx获得球员手牌得分.我搜索字符串(由卡片套装和编号组成)并寻找符合RegEx的套装或数字.如果我得到2场比赛,则该球员有一对,3场比赛他有3场比赛.

我现在有3个班级,一个卡级(有数字和套装),一个甲板班(包含52张牌)和一个从洗牌的甲板上获得五张牌的Hand类.

Deck类有一个shuffleDeck(); Hand类具有计算得分的功能(在我使用RegEx的这些功能中).

我通过添加手牌所具有的5个套装和数字来生成我使用RegEx的字符串.

这是一个好主意还是我应该采取另一种方式,如果是这样,怎么做?

谢谢您的帮助

PS.我是一个没有经验的程序员,想要使用新学到的工具



1> Jonathan Lef..:

我认为正则表达式不是解决这个问题的合适方法.您可能应该使用比字符串更复杂的手形表示.


关于正则表达式最重要的一点就是不使用它们.

2> mmattax..:

你没有提供太多的细节,但从我读过的内容来看,我认为你并没有把OOP推得太远......

我会有一个具有Rank和Suit类实例的Card类.然后我会有一个处理改组/交易的甲板课......

然后我会有一个Hand类,它将包含你的n卡对象的扑克牌......

通过这种方式,您可以构建规则来评估每个手对象,从而在未来更灵活,更具可扩展性...如果您想制作另一个纸牌游戏/添加对另一种扑克变种的支持...

使用正则表达式来完成所有这些似乎是一个非常糟糕的选择.

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有