|P is for Practical|
perl regex referencingby ocs (Monk)
|on Sep 18, 2007 at 08:10 UTC||Need Help??|
ocs has asked for the wisdom of the Perl Monks concerning the following question:
I got a small problem concerning references in perls regex flavor.
And I want to match all double characters (a-z), i.e. ll and rr in the given string and contract them to one char. (Please do not take this seriously, its just an example.)
So I went like this:$lala =~ s/([a-z])$1/$1/g
It does not work. So I played around:$lala =~ s/([a-z])\1/$1/g
This works. But what I kept in mind was this: Warning on \1 vs $1
So I don't know why in the first version the $1 in the matching part (not the substitute part) does not work but with \1 in the second version? I thought \1 is obsolete and just a relic of a sed styled referencing.
This is nothing big, but ... did I miss something?
Thanks in advance,
tennis players have fuzzy balls.