in reply to What is the best way to compare variables so that different types are non-equal?
qr/STRING/msixpoThis operator quotes (and possibly compiles) its STRING as a regular expression. STRING is interpolated the same way as PATTERN in m/PATTERN/. If "'" is used as the delimiter, no interpolation is done. Returns a Perl value which may be used instead of the corresponding /STRING/msixpo expression. The returned value is a normalized version of the original pattern. It magically differs from a string containing the same characters: ref(qr/x/) returns "Regexp", even though dereferencing the result returns undef.
I think the relevant part of the docs is the bit I've highlighted. qr// compiles normalises the regex--which basically means blessing it. Hence the magical behaviour.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: What is the best way to compare variables so that different types are non-equal?
by ikegami (Patriarch) on Jul 19, 2009 at 16:10 UTC | |
by BrowserUk (Patriarch) on Jul 19, 2009 at 16:21 UTC | |
by ikegami (Patriarch) on Jul 19, 2009 at 16:25 UTC |