You are viewing the version of this documentation from Perl 5.30.2. View the latest version

The text matched by the used group most-recently closed (i.e. the group with the rightmost closing parenthesis) of the last successful search pattern. This is subtly different from $+. For example in

"ab" =~ /^((.)(.))$/

we have

$1,$^N   have the value "ab"
$2       has  the value "a"
$3,$+    have the value "b"

This is primarily used inside (?{...}) blocks for examining text recently matched. For example, to effectively capture text to a variable (in addition to $1, $2, etc.), replace (...) with

(?:(...)(?{ $var = $^N }))

By setting and then using $var in this way relieves you from having to worry about exactly which numbered set of parentheses they are.

This variable was added in Perl v5.8.0.

Mnemonic: the (possibly) Nested parenthesis that most recently closed.