Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]8934[/thread]

In "grep" ZWEI Bedingungen erfüllen (Seite 3)

Leser: 2


<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten
Meo
 2007-04-21 18:24
#76104 #76104
User since
2007-04-20
12 Artikel
BenutzerIn
[default_avatar]
Nochmals Danke! Aber...

Bei der praktischen Anwendung von
Code: (dl )
1
2
my %seen;
@unique = grep { !$seen{$_->[-1]}++ } sort { $b->[0] <=> $a->[0] } map { [split("\t", $_)] } @found;

werden zwar alle "Jobs" ausgeführt, aber die Inhalte der Element werden nicht angezeigt in der Ausgabe.
Es wird leglich ein Element des jeweiligen Datensatzes mit "ARRAY(0x8379824)" ausgegeben.

Bei der Anwendung von
Code: (dl )
1
2
my %seen = ();
my @unique = grep { $seen{(split /\t/)[1]}++ ? undef : $_ } @found;

erhalte ich, wenn ich @unique auslese gar keine Inhalte zurück.

Aber ich bin sicher, wir sind dicht dran...!? Vielleicht liegt ja nur ein kleiner Fehler im Detail vor.

@pq Sorry, jetzt habe ich die Code-Tags gefunden.
PerlProfi
 2007-04-21 20:43
#76105 #76105
User since
2006-11-29
340 Artikel
BenutzerIn
[default_avatar]
Ja stimmt, bei meiner Version muss das natürlich noch zusammengefügt werden:
Code: (dl )
1
2
my %seen;
@found = map { join("\t", @{$_}) } grep { !$seen{$_->[-1]}++ } sort { $b->[0] <=> $a->[0] } map { [split("\t", $_)] } @found;


@holli, deine Version bringt nicht das gewünschte Ergebnis, der Name der Haupt-Domain steht im letzten Teil nach split() nicht im 2.
Ausserdem soll nach der Trefferzahl, dem 1. Teil nach split() sortiert werden.\n\n

<!--EDIT|PerlProfi|1177173962-->
holli
 2007-04-21 20:53
#76106 #76106
User since
2003-10-01
6 Artikel
BenutzerIn
[Homepage] [default_avatar]
Stimmt. Fanboy hat Recht. Mein Deustchlehrer würde sagen: Thema verfehlt. :)\n\n

<!--EDIT|holli|1177174833-->
Meo
 2007-04-21 21:28
#76107 #76107
User since
2007-04-20
12 Artikel
BenutzerIn
[default_avatar]
Super PerlProfi! Klappt alles bestens. Dankeschön :-)

Auch ein Dankeschön an holli und renee für die guten Ansätze!

Ist schon sehr Bemerkenswert, wie kurz und mächtig manche Befehle genutzt werden können. *WOW*
Ich habe auch den Eindruck, die letzte Variante ist schneller.\n\n

<!--EDIT|Meo|1177177228-->
<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten



View all threads created 2007-04-20 16:56.