What is backreferences in Perl?

Backreferences in Perl are used in regular expressions to refer to a previously captured group. This allows you to match the same text as previously matched by a capturing group in your regex pattern. They are denoted by a backslash followed by a digit, where the digit corresponds to the position of the capturing group in the regex pattern (starting from 1).

For example, in the regex pattern /(foo)(bar)\1/, the backreference \1 refers to the text matched by the first capturing group (foo). Thus, this pattern would match the string "foobarfoo".

my $string = "foobarfoo"; if ($string =~ /(foo)(bar)\1/) { print "Matched: $string\n"; }

backreferences Perl regular expressions regex capturing groups