TJRandall has asked for the wisdom of the Perl Monks concerning the following question:
I am comparing lists of invalid database objects, and trying to determine when values in the second list don't match the values in the first list. (I have to warn the user, via a Jenkins build, when the list has grown and/or new values have appeared)
The exists block fails at runtime, but I cannot figure out a clean, easy way to traverse the 'postbuilds' array to check if the value exists. Any help/pointers would be GREATLY appreciated!
#!/usr/bin/perl use strict; use warnings; use Data::Dumper; my @array1 = ( "proc1", "proc2", "proc3", "proc4" ); my @array2 = ( "proc1", "proc2", "proc3", "proc4", "proc5" ); my %HoA = ( prebuilds => [@array1], postbuilds => [@array2], ); print Dumper \%HoA; while ( my ( $key, $reference ) = each %HoA ) { foreach my $temp ( @{$reference} ) { print "key: $key, temp: $temp\n"; # look to see if a value in the postbuild list # exists in the prebuild list if ( exists( $HoA{'postbuild'}->$temp ) ) { print "yes\n"; } else { print "no\n"; } } }
Thank you!
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Comparing values within a Hash of Arrays
by stevieb (Canon) on Apr 24, 2012 at 14:22 UTC | |
by TJRandall (Sexton) on Apr 24, 2012 at 14:30 UTC | |
by stevieb (Canon) on Apr 24, 2012 at 14:34 UTC | |
by TJRandall (Sexton) on Apr 24, 2012 at 15:36 UTC | |
|
Re: Comparing values within a Hash of Arrays
by Anonymous Monk on Apr 24, 2012 at 14:17 UTC | |
|
Re: Comparing values within a Hash of Arrays
by tommyxd (Acolyte) on Apr 24, 2012 at 14:18 UTC |