$a =~ s/[\s\d]*//r cmp $b =~ s///r
Doesn't the proper operation of the compare using this trick (for which, I think, see "The empty pattern //" in perlop) assume a left-side-then-right-side order in which cmp (see Equality Operators in perlop) evaluates its operands (which I don't see specified anywhere)? I.e.,
$a =~ s///r cmp $b =~ s/[\s\d]*//r
fails (testing under Perl version 5.14). One can imagine that such a situation might easily arise during a cut/paste change of sorting order from ascending to descending. Isn't this a bug waiting to be born (can we call it a larva)? Doesn't it at least merit a prominent comment?
Give a man a fish: <%-{-{-{-<
In reply to Re^2: Sort alphabetically from file
by AnomalousMonk
in thread Sort alphabetically from file
by edujs7
For: | Use: | ||
& | & | ||
< | < | ||
> | > | ||
[ | [ | ||
] | ] |