多次匹配相同的未知字符

Eri*_*ted 12 regex

我有一个似乎无法解决的正则表达式问题.我实际上不知道正则表达式是否可以做到这一点,但我需要在模式结束时匹配一系列字符n次.例如.blahblah [AZ] {n}问题是任何字符匹配的结尾范围都需要完全相同.

例如,我想匹配

  • blahblahAAAAA
  • blahblahEEEEE
  • blahblahQQQQQ

但不是

  • blahblahADFES
  • blahblahZYYYY

是否有一些正则表达式模式可以做到这一点?

Ahm*_*eed 22

您可以使用此模式: blahblah([A-Z])\1+

\1在这种情况下,它是对第一个捕获组的反向引用([A-Z]).并且该+符号将匹配该字符一次或多次.要限制它,您可以+使用特定数量的重复替换它{n},例如\1{3}将其匹配三次.

如果您需要匹配整个字符串,请确保分别使用前缀^和结尾$,以便模式成为^blahblah([A-Z])\1+$

您可以在此处阅读有关反向引用的更多信息.