Cita:
Empezado por ecfisa
Hola roman.
Cometí un error de copia/pega de una de las varias pruebas,de ahí el SetLength ![Embarrassment](http://www.clubdelphi.com/foros/images/smilies/redface.gif) . (Aunque acabo de hacerle unas comprobaciones e igual funciona con espacios sobre el final)
|
En esta versión, S[I+1] se sale de la cadena al final, lo cual puede ser inseguro. Supongo que por eso habías agrandado en 1 la longitud de la cadena en la versión anterior; aunque aún tendrías que asegurarte que en ese lugar extra no tienes un espacio que de casualidad ande por ahí. ¿Por qué no así?
Código Delphi
[-]
function IgnoreExtraSpaces(str: string): string;
var
i: integer;
begin
str := str + #0;
for i := 1 to Length(str)-1 do
if (str[i] <> ' ') or (str[i+1] <> ' ') then
Result := Result + str[i];
end;
// Saludos