(a|b)\1
在这个表达式中,\1
是什么意思?
\1
- 它表示匹配表达式中的第一个捕获组。\n
将是第n个捕获组。(请注意,\0
是整个匹配)。在许多引擎中,n的上限为9,但有些引擎支持高达99。
当在正则表达式中使用类似于 (a|b)\1
的语法时,它表示在 a 或 b 后面,下一个字符应该是第一个捕获的组,即 a 或 b,所以此处的正则表达式将匹配 aa
或 bb
。
它指的是第一组括号中匹配的内容,也就是第一组。后面的数字表示后续的括号。
(1|2)(3|4)\1\2
会匹配:
1313
1414
2323
2424
(groupOne(groupTwo)stillOne(groupThree(groupFour)))