使用Perl和:
my $s="The Sea! The Sea!"
模式/(.+)\s*\1/
与The Sea! The Sea!
匹配,因为它与后向引用匹配\1
但是,模式/((.+)\s*\1)/
与The Sea! The Sea!
为什么?
答案 0 :(得分:10)
((.+)\s*\2)
应该有效,因为内部捕获的组已成为#2,因为最外层组被捕获组#1。
请注意,您也可以使用组的相对编号,即
((.+)\s*\g{-1})
\g{-1}
与最近捕获的群组匹配的位置。