Hola roman.
Cometí un error de copia/pega de una de las varias pruebas,de ahí el
SetLength . (Aunque acabo de hacerle unas comprobaciones e igual funciona con espacios sobre el final)
Debería haber sido esta:
Código Delphi
[-]
function IgnoreExtraSpaces(const str: string): string;
var
i: integer;
begin
for i := 1 to Length(str) do
if (str[i] <> ' ') or (str[i+1] <> ' ') then
Result := Result + str[i];
end;
Saludos