This perl 5.006001.
I have casted this surprising behavior (which?) in the traditional froggy $A++ obfu. The goal is to increment $A once in some convoluted way.
I have casted this surprising behavior (which?) in the traditional froggy $A++ obfu. The goal is to increment $A once in some convoluted way.
$A += ('(A)' =~ m(\(A\)))[0] == ('(A)' =~ m((A)))[0]; $A += ('(A)' =~ m|\(A\)|)[0] == ('(A)' =~ m|(A)|)[0];
you can contribute by sending to $A++@mongueurs.net and /msg BooK if your contribution does not appear soon enough.
-- stefp -- check out TeXmacs wiki
Due to the lack of feedback. I ask the question more clearly
Is it a documented feature that qr() and m()
behave oddly with bacckslashed paren while qr// and m// don't?
See below how qr(\(a\)) and qr|\(a\)| behave
differently?
DB<1> $a = qr((a)); print "'$a' "; print '(a)' =~ m|$a| '(?-xism:(a))' a DB<2> $a = qr(\(a\)); print "'$a' "; print '(a)' =~ m|$a| '(?-xism:(a))' a DB<3> $a = qr(\\(a\\)); print "'$a' "; print '(a)' =~ m|$a| '(?-xism:\\(a\\))' DB<4> $a = qr|\(a\)|; print "'$a' "; print '(a)' =~ m|$a| '(?-xism:\(a\))' 1
tye explained it to me:" backslashing the delimiter allows it to be inside the delimited text, it doesn't cause the backslash to be included in the string as well". Thanks tye.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: bug or feature? $A++ certainly :)
by BooK (Curate) on Jun 07, 2002 at 12:28 UTC |
Back to
Obfuscated Code