Thread Wörterliste addiert sich
(6 answers)
Opened by Clubcola at 2018-02-06 18:01
Wenn möglich, vermeide globale Variablen. Beschränke Ihre Gültigkeit auf das notwendigste.
Wie genau hast Du das Leeren der Variablen probiert? Welche hast Du geleert? Ich muss gestehen, so richtig klar wird mir Dein Problem anhand Deiner Beschreibung nicht. @liste soll sich ja laut Deinem Code mit jedem Durchlauf erhöhen. Das gleiche gilt für @neue_liste, in die auch in jedem neuen Durchlauf nur hinzugefügt wird. Möglicherweise möchtest Du die @neue_liste erst erstellen, nachdem die Schleife über die @$ergebnisse gelaufen ist? Und danach dann die sortierte Liste erstellen und ausgeben? Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # ungetestet foreach(@$ergebnisse) { $beschr1 = $_->{beschr1}; $id = $_->{id}; ## Wörter in Array schreiben, zählen und nach Vorkommen sortieren push @liste, split /[^a-zA-ZäöüÄÖÜß-]/, $beschr1; foreach $wort (@liste) { $wortliste{$wort}++; } } # Nachdem alle Wörter ermittelt wurden foreach $wort (sort keys %wortliste) { push (@neue_liste,"$wortliste{$wort}||$wort"); } my @sortierte_liste = sort { $b <=> $a } @neue_liste; print "<br>".@sortierte_liste; meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen! |