in reply to map and grep
You want grep to remove rows, while map and List::MoreUtils's apply transforms rows.
When using grep or map, don't change $_ unless you want to change the original array.
apply is similar to map, but you can safely modify $_. The downside to using apply is that you're limited to 1:1 transformations (whereas map is extremely flexible).
use List::MoreUtils qw( apply ); my @orig = qw( Just another Perl hacker ); my @grepped = grep { /^[A-Z]/ } @orig; my @mapped = map { uc } @orig; my @applied = apply { s/[aiueo]//ig } @orig; print("@orig\n"); # Just another Perl hacker print("@grepped\n"); # Just Perl print("@mapped\n"); # JUST ANOTHER PERL HACKER print("@applied\n"); # Jst nthr Prl hckrList::MoreUtils can easily be installed if you're using ActivePerl. Just type by ppm install List-MoreUtils at the prompt
|
|---|