Perl Monk, Perl Meditation | |
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
$1 is what was matched by the first set of
parenthesis of the last succesful regular
expression. It will therefore never refer to (parts of)
the current match in progress (ignoring (?{ })
and (??{ }) issues). $1 is a variable - it interpolates just like any other variable;
it doesn't have a special meaning inside a regular expression.
\1 does have a special meaning inside a regular expression: it matches exactly the same (sub)string as was matched by the first set of parenthesis in the current regular expression. It's not a variable, it's a special construct. In other interpolative contexts, it means something else: \NNN means the character with octal value NNN. It's a construct, just like \xNN or \n. There's one exception, inside the replacement part of a substitution, \1 .. \9 (so, that's only 9 exceptions, it doesn't work for higher numbers) are equivalent to $1 .. $9, but their use does trigger a warning. Abigail In reply to Re: YAPC::NA::2003::mandog
by Abigail-II
|
|