正则表达式只捕获2位数的字符串

Tom*_*ger 2 regex

我搜索过类似的问题,即使我找到了几个答案,也没有任何接缝可以工作.我有一个字符串列表

Z189
I142
M395
L210
V467
M203
Q277
Q461
Y440
S250
M162
Q96
22Q
W148
Q72
T22T
22TWE22
12E34
Run Code Online (Sandbox Code Playgroud)

我需要一个正则表达式才能找到只有2位数字(不多或少)的字符串.所以在这种情况下:

Q96, 22Q, Q72, T22T

我失败的尝试包括:

\D\d{2}\D
(?<!\d)\d{2}(?!\d)
Run Code Online (Sandbox Code Playgroud)

Zen*_*noo 5

你可以用 ^\D*(\d)\D*(\d)\D*$

\D* 在第一个数字之前确定任何内容都不是另一个数字.

(\d) 捕获您的第一个数字.

\D* 确保两位数字之间没有其他数字.

(\d) 捕获你的第二个数字.

\D* 确保你的第二个数字后的任何内容都不是另一个数字.