我只是在尝试自学如何使用正则表达式,如果这对某些人来说似乎微不足道,我很抱歉。
我正在制作一个小婴儿床脚本。它使用一副标准的扑克牌,我使用CDHS
(梅花、方块、红心、黑桃)作为花色,使用A2..9TJQK
(ace、2...9、10、jack、queen、king)作为等级。
我有一个变量$hand
,它是一个偶数长度的卡片串。例如,S2HA3D
分别是黑桃 2、红桃 A 和方块 3。请注意,花色和等级可以是任意一种。
我正在使用:
preg_match_all("/[2-9ATJQK][CDHS]|[CDHS][2-9ATJQK]/i", $hand, $result);
找到所有的牌,但这会按照找到的顺序返回花色和等级。
我的问题是,无论给出的顺序如何,我怎样才能使结果为每张卡排在第一位。我希望我已经清楚地表达了这一点。