http://qs1969.pair.com?node_id=777860


in reply to grep for hash?

Just with map:

use strict; use warnings; use Data::Dumper; my $orig = { 'foo' => 2, 'bar' => 4, 'boo' => 1, 'zar' => 5 }; my $dest; map { /oo/ and $dest->{$_} = $orig->{$_} } keys %$orig; print Dumper $dest; __END__ Output: $VAR1 = { 'boo' => 1, 'foo' => 2 };


hth,
PooLpi

'Ebry haffa hoe hab im tik a bush'. Jamaican proverb

Replies are listed 'Best First'.
Re^2: grep for hash?
by Fletch (Bishop) on Jul 07, 2009 at 13:45 UTC

    Map in void context? Bleh. (See map versus for)

    The cake is a lie.
    The cake is a lie.
    The cake is a lie.

Re^2: grep for hash?
by Anonymous Monk on Jul 07, 2009 at 12:44 UTC
    Should be :D  /oo/ and $dest->{$_} = $orig->{$_} for keys %$orig;

      Written like it's said, "Copy each selected key":

      $dest->{$_} = $orig->{$_} for grep /oo/, keys %$orig;

      There's no need to twist one's mind to process the parent's expression.