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?
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.