![]() |
Re: Wörter zählen, optmimieren?
Bei den Trennzeichen für's "Wörter zählen" sollte man vielleicht auch noch Frage- und Ausrufungszeichen (?!) berücksichtigen :)
Nicht jeder will nur die Wörter im Sourcecode zählen :mrgreen: Bert |
Re: Wörter zählen, optmimieren?
der ansatz die trennzeichen zu zählen ist ja ganz interessant, aber es gibt alle möglichen arten von trennungen, manchmal^würden^menschen sowas sogar zusammenschreiben, was macht man da? sich mal meinen vorschlag anhören :mrgreen:
wörter bilden sich im regelfall aus buchstaben, dafür sind sie bekannt, also warum nicht sobald ein wort anfängt den counter erhöhen und bis zum ende des wortes weitergehen? konkret sähe das folgendermaßen aus...
Delphi-Quellcode:
function WordCount(const S: string): Integer;
const ValidChars = ['a'..'z','A'..'Z','ä','ö','ü','Ä','Ö','Ü','ß']; var P: PChar; begin Result := 0; if S = '' then Exit; P := Pointer(S); repeat if P^ in ValidChars then begin while (P^ in ValidChars) and (P^ <> #0) do Inc(P); Inc(Result); end else Inc(P); until P^ = #0; end; |
Re: Wörter zählen, optmimieren?
@Nothine:
Den Ansatz hatten wir (fast) schon mal weiter oben - ohne die Pointer. Aus Deiner Idee kann noch was werden, wenn Du Deine "ValidChars" noch um Zahlen oder z.B. italienische, spanische oder türkische Buchstaben erweiterst... Aber so im Großen und Ganzen bevorzuge ich doch eher das Parsen nach Trennzeichen :pale: Tschulligung: "Wörter zählen" ist (und bleibt) leider ein Scheiß-Thema, das möglicherweise zu lösen wäre, wenn ... ...wenn es nur eine Sprache gäbe... Komplett naive (realitätsfremde) Grüße daher/dazu von Bert |
Re: Wörter zählen, optmimieren?
Zitat:
Das das langsam sein muß ist ja wohl klar. Gruß Hagen PS: Variablen sind die Freunde des Programmierers ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:02 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