正则表达式计算直接扑克牌 – 使用ASCII码
发布时间:2020-12-14 06:05:08 所属栏目:百科 来源:网络整理
导读:在另一个问题中,我学会了如何使用正则表达式计算直接扑克牌( here). 现在,出于好奇,问题是:我可以使用正则表达式使用ASCII代码计算相同的东西吗? 就像是: 正则表达式:[C] [C 1] [C 2] [C 3] [C 4],是C的ASCII码(或者像这样) 比赛:45678,23458 不符合:4
在另一个问题中,我学会了如何使用正则表达式计算直接扑克牌(
here).
现在,出于好奇,问题是:我可以使用正则表达式使用ASCII代码计算相同的东西吗? 就像是: 正则表达式:[C] [C 1] [C 2] [C 3] [C 4],是C的ASCII码(或者像这样) 比赛:45678,23458 不符合:45679或23459(不按顺序) 解决方法
你的主要问题实际上是你没有使用ASCII连续编码,你使用的是非面部卡的数字,以及面部卡的非连续,无序字符.
您需要在字符串的开头检测2345A,23456,34567,…,6789T,789TJ,89TJQ,9TJQK和TJQKA. 这些不是连续的ASCII码,即使它们是,你也会遇到问题,因为A2345和TJQKA都是有效的,你不会得到A小于和大于同一字符集中的其他字符. 如果它必须由正则表达式完成,那么以下正则表达式段: (2345A|23456|34567|45678|56789|6789T|789TJ|89TJQ|9TJQK|TJQKA) 可能是最简单,最易读的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |