Wenn man die mehrfache Eingabe von Leerzeichen entfernen möchte, hilft diese Prozedur weiter:
Delphi-Quellcode:
procedure LeerzeichenEntfernen;
var i,j: integer;
s,t:string;
uebrig:boolean;
begin
s:=Edit1.Text;
repeat
uebrig := false;
SetLength(t, length(s));
for i := 1 to length(s)-1 do
if (s[i] = ' ') and (s[i+1] = ' ') then
begin
SetLength(t, length(t)-1);
for J := 1 to length(s)-1 do
if J<i then
t[J] := s[J]
else
t[J] := s[J+1];
s := t;
end;
//prüfen ob fertig
for i := 1 to length(s)-1 do
if (s[i] = ' ') and (s[i+1] = ' ') then
uebrig := true;
until not uebrig;
s:=trimleft(s); //Entfernt Leerzeichen am Anfang des Strings
s:=trimright(s); //Entfernt Leerzeichen am Ende des Strings
Edit1.Text:=s;
end;
thx to Hagen