I made a temp array so as not to keep the changes the substitution made.@temp = map { s/^The // } @indata; @sorted = sort {lc($a) cmp lc($b) } @temp;
Update: Actually, it *does not* alter the original values. Note that I assign the map s/// to @temp; @indata remains unchanged. This, from the manpage for map(type it in on this site's search box, for ease).
%hash = map { getkey($_) => $_ } @array; is just a funny way to write %hash = (); foreach $_ (@array) { $hash{getkey($_)} = $_; }
Update (number two): My mistake. . . I did test the code, though I changed it slightly and didn't think to test it again. I'm sorry--I misread the manpage, and misinterpreted what they were doing. This code should do what I meant in the first place:
@temp = map {my $tmp; ($tmp = $_) =~ s/^The //; $tmp} @indata
In reply to Re: File Sorting Question
by dimmesdale
in thread File Sorting Question
by vbrtrmn
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |