Hi all, I'm trying to create a new array called @result that contains the elements of @dead_list without those that also appear in @get_list.
@dead_list
$VAR1 = [ [ 100, 101, 103, 200, 201, 202, 203, 210, 211, 212, 220, 221, 222, 230, 231, 232, 233, 240, 241, 242, 243, 1000, 1001, 1002, 1010, 1011, 1012, 1020, 1021, 1022, 1120, 1121, 1122, 1210, 1211, 1212 ] ];
@get_list
$VAR1 = [ [ '100', '200', '210', '220', '230', '240', '1000', '1001', '1002', '1120', '1210' ] ];
Here's the code I'm using:
sub remove_x99 { my @dead_list = shift; my @get_list = shift; ###REMOVE TARGET X99 ENTRIES FROM DEAD_lIST print Dumper\@dead_list; print Dumper\@get_list; my %lookup; my @result; @lookup{@get_list} = (); print Dumper \%lookup; foreach my $elem (@dead_list) { push(@result, $elem) unless exists $lookup{$elem}; } print Dumper\@result; }
And here's what the Dumper of %lookup looks like:
$VAR1 = { 'ARRAY(0x1a56440)' => undef };
I'm completely baffled as @results just returns the exact same thing as @dead_list... can anyone help please?
In reply to Array lookup by bartrad
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |