lamp has asked for the wisdom of the Perl Monks concerning the following question:
Dumper output after deleting$VAR1 = { '10' => 'Test1,Test2,Test3,Test4,Test5,Test6', '20' => 'Test4' };
$VAR1 = { '10' => 'Test1,Test3,Test5,Test6' };
#!/usr/bin/perl use warnings; use strict; use Data::Dumper; my %new_reports = ( 10 => 'Test1,Test2,Test3,Test4,Test5,Test6', 20 => 'Test4' ); print Dumper(\%new_reports); my @key_to_search = qw(10 20); my @element_to_delete = qw(Test2 Test4); foreach (@key_to_search) { if($new_reports{$_}) { my @sel_reports = split(/,/,$new_reports{$_}); map{ my $element_to_remove = $_; @sel_reports = grep { $_ ne $element_to_remove } @ +sel_reports; }@element_to_delete; if(scalar(@sel_reports) > 0) { $new_reports{$_} = join(",",@sel_reports); } else { delete $new_reports{$_}; } } } print Dumper(\%new_reports);
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: better way delete comma separated hash values?
by ikegami (Patriarch) on Sep 29, 2008 at 12:05 UTC | |
|
Re: better way delete comma separated hash values?
by betterworld (Curate) on Sep 29, 2008 at 11:57 UTC | |
|
Re: better way delete comma separated hash values?
by salva (Canon) on Sep 29, 2008 at 11:58 UTC | |
by ikegami (Patriarch) on Sep 29, 2008 at 12:16 UTC |