Einzelnen Beitrag anzeigen

Benutzerbild von Mokus
Mokus

Registriert seit: 24. Sep 2013
165 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

Stringlist; Häufigkeit einzelner Wörter

  Alt 24. Sep 2013, 08:48
Delphi-Version: 5
Einen wunder schönen guten Morgen liebe Community,

Ich hätte mal ne frage.
hab schon bisschen rumgestörbert aber noch nicht das ware gefunden, was ich eigentlich gesucht habe.

Meine Aufgabe;
hab ein Memofeld.
Dort wird ein text eingegeben und ich soll die Wörter zählen.
Das war nicht das Problem;
XE2;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  I: integer;
  st_woerter: tstringlist;
  a_speicher: array of integer;

begin

  st_woerter := tstringlist.create;
  setlength(a_speicher, 2);
  st_woerter.CommaText := Memo1.text;

  for I := 0 to st_woerter.Count - 1 do
  begin
    if st_woerter.CommaText <> 'then
    begin
      a_speicher[0] := a_speicher[0] + 1;
    end;
  end;
  Memo2.text := ('In diesem Text sind es insgesamt: ' + inttostr(a_speicher[0])
    + ' Wörter');

end;

end.
Nun soll ich die Häufigkeit der einzelnen Wörter ausgeben und absteigend Sortieren.
In der Stringlist kann ich mir jedes einzelne Wort rausgeben, aber wie kann ich diese nun öfters Zählen?

Erste überlegung wasr If;
aber soll ich den ganzen Duden in eine if abfrage packen ? :p


Da gibt es bestimmt noch eine andere, vernüftige Möglichkeit.


Dank im vorraus,

Mokus
Markus

Geändert von Mokus (24. Sep 2013 um 08:52 Uhr)
  Mit Zitat antworten Zitat