Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

Re: merging two hashes

by ikegami (Pope)
on Feb 08, 2006 at 20:53 UTC ( #528930=note: print w/ replies, xml ) Need Help??

in reply to merging two hashes

While [ ... ] constructs an array, it returns a reference to the array, not the array itself. That means that $s->{aa}->{'1'} (for example) is a reference to an array. You need to dereference it.

my @a = ( @{$s->{aa}->{'1'}}, @{$s->{bb}->{'1'}}, @{$s->{cc}->{'1'}}, );

or (minimal change)

my @a = map { @$_ } ( $s->{aa}->{'1'}, $s->{bb}->{'1'}, $s->{cc}->{'1'}, );


my @a = map { @{$s->{$_}->{'1'}} } keys %$s;

Comment on Re: merging two hashes
Select or Download Code
Replies are listed 'Best First'.
Re^2: merging two hashes
by Roy Johnson (Monsignor) on Feb 08, 2006 at 22:20 UTC
    If you're not going to sort the keys, you can just use values
    my @a = map @{$_->{1}}, values %$s;

    Caution: Contents may have been coded under pressure.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://528930]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (9)
As of 2016-02-11 13:21 GMT
Find Nodes?
    Voting Booth?

    How many photographs, souvenirs, artworks, trophies or other decorative objects are displayed in your home?

    Results (368 votes), past polls