![]() |
Wörter zählen
Hallo,
ich habe eine Procedure geschrieben um die Wortanzahl in einem RichEdit zubestimmen, allerdings scheint sie nicht die korrekte Anzahl der Wörter zu ermitteln. Wenn ich die Wortanzahl eines Textes in Word ermittle fällt diese höher aus als jene welche meine Procedure ermittelt.
Delphi-Quellcode:
Könnte mir jemand bitte sagen was ich falsch gemacht habe bzw. was ich nicht beachtet habe.
var Text : PChar;
WortAnzahl : Integer; begin WortAnzahl:=0; Text:=RxRichEdit1.Lines.GetText; while (Text^ <> #0) do if Text^ in [#1..#64,#91..#96,#123..#127] then inc(Text) else begin while not (Text^ in [#1..#64,#91..#96,#123..#127]) do inc(Text); inc(WortAnzahl); end; Label1.Caption:='Wörter: '+inttostr(WortAnzahl); end; Tschüß Markus |
Re: Wörter zählen
Moin Markus,
wie gross fällt der Unterschied denn aus? In einem Thread von Luckie aus den letzten paar Tagen, mit einem ähnlichen Thema, hatte ich mal etwas Ähnliches gepostet. Schau Dir den Thread doch mal an. Vielleicht findest Du ja noch etwas passendes zu Deinem Problem. |
Re: Wörter zählen
Hallo Christian Seehase,
ich habe das Problem glaub ich gelöst. Meine Funktion scheint zu stimmen, Word zählt die Wörter falsch :lol: . Word zählt beim Wörter zählen die Zahlen(z.B. 67,98,...) mit, meine Funktion nicht. Sehe Zahlen nicht als Wörter an, deshalb habe ich sie auch nicht mit gezählt. Wenn ich Texte ohne Zahlen mit beiden Programmen vergleiche ist die Wörterzahl identisch. Tschüß Markus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:17 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz