Thread grep mit array of hashes (10 answers)
Opened by vayu at 2006-06-16 11:34

pq
 2006-06-16 11:54
#67399 #67399
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
grep ..., @array setzt in jedem durchlauf die spezielle variable $_
als alias für das gerade bearbeitete element. also im prinzip genauso
wie for.
perl kann nicht ahnen, dass du hier das äußere $_ meinst. zudem ist deine
logik etwas komisch. wenn du mit dem $_ das äußere meinst, würdest du
Code: (dl )
1
2
3
4
5
foreach my $ar1 (@ar1) {
   if( grep ($ar1->{'name'}, @ar2) ) {  # Zeile 18
       print $ar1->{'name'}."drin\n";
   }  
}

schreiben müssen.
das grep ist völlig sinnlos, du prüfst einfach nur 5 mal (@ar2), ob
$ar1->{name} einen wahren wert enthält.
wahrscheinlich willst du
grep { $ar1->{name} eq $_ } @ar2\n\n

<!--EDIT|pq|1150444642-->
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread grep mit array of hashes