Hallo,
du lässt eine Schleife von 1 bis length(string) über den String laufen und checkst in dieser Schleife ob du:
a) ein Leerzeichen hast, wenn ja wird das nächste Zeichen Großgeschrieben
b) kein Leerzeichen hast, dann wird das aktuelle Zeichen, wenn nicht durch a) ein durchlauf vorher "markiert" kleingeschrieben
Klein und Großschreibung geht mit uppercase und lowercase
mfG
Markus
Delphi-Quellcode:
function correctName(str : string):string;
var up : boolean;
var i : integer;
begin
up := false;
str[1] := uppercase(str[1]);
for i := 2 to length(str) do
begin
if str[i] <> ' ' then
begin
if up then str[i] := uppercase(str[i) else str[i] := lowercase(str[i]);
up := false;
end else
begin
up := true;
end;
end;
result := str;
end;
EDIT: @ Nikolai: Oder man machts so wie ich (oder dein Vorredner) und macht alles klein, was nicht groß werden soll
Ups, ich stelle gerade fest, dass der Code meines VorVorrednera eigentlich identisch mit meinem ist ... Pech gehabt ^^