我正在尝试编写一个正则表达式来匹配成对的卡片 (AA, KK, QQ ... 22)
我有正则表达式 ([AKQJT2-9])\1
。我遇到的问题是这个正则表达式将匹配 AA
以及 AAbc
等。有没有办法编写正则表达式,以便我可以指定我要匹配 ([AKQJT2-9])\1
并且只有那个(即后面没有更多字符)。
最佳答案
将正则表达式包含在 ^
和 $
中:
^([AKQJT2-9])\1$
^
是“字符串开头” anchor ,$
是“字符串结尾” anchor 。如果您的正则表达式风格支持它,\A
和 \Z
可能是更好的选择,因为 ^
和 $
也可以匹配多行字符串中一行的开始/结束,具体取决于您的正则表达式引擎和配置。
关于用于检查字符串的正则表达式是否为一定长度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2486951/