hoi,
ich hab ne frage und zwar hierzu :
Delphi-Quellcode:
function CountWords(str: string; sep: char): integer;
begin
result := 0;
if str <> '' then // Wenn str nicht leer ist
begin
if pos(sep, str) <> 0 then // Wenn chr in str ist
begin
while Copy(str, 1, 1) = sep do // Solange zeichen1 löschen bis es nichtmehr chr ist (wenn überhaupt?)
Delete(str, 1, 1);
while pos(sep, str) <> 0 do // hier muss ich schon wieder abfragen ob chr noch in str ist? (siehe if-abfrage2)
begin
inc(Result);
Delete(str, 1, Pos(sep, str));
end;
if str <> '' then // hier muss ich schon wieder abfragen ob str nicht leer ist? (siehe if-abfrage1)
inc(Result);
end
else
inc(Result);
end
else
Result := 0;
end;
ich krieg es nicht anders hin, gibt es ne alternative? Der code funzt einwandfrei, ich übergebe einen string der in wörter geteilt wird anhand des seperators... aber ich finde das ist für sone kleinigkeit vielzuviel geschrieben oder nicht? z.b das ich 2 abfragen doppelt hab (aber wie gesagt anders bekomm ichs nicht hin). ich wollt mal wissen wie ihr das gemacht höättet, damit ich mir n paar (bessere?) beispiele angucken kann