in reply to modifying perl functions without having to write own functions...
Examples using a function that returns the transformed value:
@new = map lc, @old; @new = map ord, @old; @new = map { sprintf('%02X', $_) } @old;
Examples using a function that transforms the value in-place:
use List::MoreUtils qw( apply ); @new = apply { chomp; } @old; @new = apply { tr/a-z/n-za-m/; } @old;
It's particularly easy when the the function uses $_ when no argument is supplied. You can make your own functions work on $_ by using the following pattern:
sub func { for (my $s = @_ ? $_[0] : $_) { ... do something with $_ ... return $_; } } $new = func($old); @new = map func, @old;
|
|---|