正则表达式匹配只有2个大写字母的字符串

时间:2014-07-21 07:02:42

标签: python regex

我想编写一个正则表达式,只有在字符串由两个大写字母组成时才匹配字符串。

我试过 - [A-Z]{2}, [A-Z]{2, 2} and [A-Z][A-Z]但这些只匹配字符串' CAS'虽然我希望匹配只有字符串是两个大写字母,如' CA'。

4 个答案:

答案 0 :(得分:14)

你可以使用锚点:

^[A-Z]{2}$

^匹配字符串的开头,而$匹配其结尾。


请注意,在您的尝试中,您使用的[A-Z]{2, 2}实际上应该[A-Z]{2,2}(没有空格)与其他人的意思相同。

答案 1 :(得分:3)

您需要添加字边界

\b[A-Z]{2}\b

DEMO

<强>解释

  • \b单词字符与非单词字符匹配。
  • [A-Z]{2}匹配两个大写字母。
  • \b单词字符与非单词字符匹配。

答案 2 :(得分:1)

你可以尝试:

\b[A-Z]{2}\b 

\ b匹配单词边界。

答案 3 :(得分:1)

^ [A-Z] [A-Z] $

只需添加字符串的起点和终点。