Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Stringlist; Häufigkeit einzelner Wörter

  Alt 24. Sep 2013, 08:10
Hallo und Willkommen in der DP ,

eine Möglichkeit, die mir spontan so einfällt: eine zweite Stringliste erzeugen. Bei jedem neuen Wort prüfst Du dann, ob dieses bereits enthalten ist. Wenn ja, zählst Du die Anzahl hoch, wenn nicht, Neueintrag mit Anzahl 1. Für die Anzahl ließe sich die Objects-Property der Liste missbrauchen. Aus der Lameng getippt:
Delphi-Quellcode:
procedure TIrgendwas.CountWord(const NewWord: string);
var
  idx, CurrentCount: integer;
begin
  CurrentCount := 0;
  idx := CountList.IndexOf(NewWord);
  if idx < 0 then
    idx := CountList.AddObject(NewWord, TObject(CurrentCount));
  CurrentCount := integer(CountList.Objects[idx]);
  inc(CurrentCount)
  CountList.Objects[idx] := TObject(CurrentCount);
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat