Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid

Re: compare an array of hashes

by inman (Curate)
on Mar 09, 2006 at 16:38 UTC ( #535432=note: print w/replies, xml ) Need Help??

in reply to compare an array of hashes

Functions such as each_array and pairwise from List::MoreUtils will allow you to iterate over two lists at a time and process them. This assumes that your lists are similar and you are just trying to get different items.

If your data is key driven then you can use a hash to find the unique keys and then grep them from the list.

my @wanted; my %keys; $keys{$_->{flag}}++ foreach (@array1, @array2); my @unique = grep {$keys{$_->{flag}} == 1} @array2; print Dumper(@unique);

Replies are listed 'Best First'.
Re^2: compare an array of hashes
by Anonymous Monk on Mar 10, 2006 at 13:42 UTC
    This is exactly what I was looking for. How do I get a list of the keys that are common to both ?

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://535432]
[erix]: that's a good one. I must remember that :P
[stevieb]: I really dislike how perlbrew doesn't list your version of perl if a newer minor version bump has happened. eg: I use 5.24.1, but 5.24.2 is available, hiding my 5.24.1. I may look at this, as I made it display correctly in berrybrew in cases like this
[stevieb]: choroba just gleaned your post about Module::Starter. I use it too, pretty much for every dist I write

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (6)
As of 2017-08-18 20:46 GMT
Find Nodes?
    Voting Booth?
    Who is your favorite scientist and why?

    Results (310 votes). Check out past polls.