Удаление лишних пробелов в строке
01.01.2007
{ **** UBPFD *********** by delphibase.endimus.com **** >> удаление лишних пробелов в строке удаляет из строки лишние пробелы без использования всяких указателей и т.д. Зависимости: стандартные модули Автор: Артем, boss1999@mail.ru, москва Copyright: собственное описание (Артем) Дата: 24 сентября 2003 г. ***************************************************** } {процедура удаления лишних пробелов в строке (см. function Sha_SpaceCompress)} var c, i: integer; stt, st, st1: string; begin c := 0; st := edit1.Text; for i := 1 to Length(st) do begin stt := copy(st, i, 1); if (stt = ' ') and (c >= 1) then begin st1 := st1; c := c + 1; end else if (stt = ' ') and (c = 0) then begin c := c + 1; st1 := st1 + stt; end else if (stt <> ' ') then begin c := 0; st1 := st1 + stt; end end; edit2.text := st1; end;
Function DeleteUselessSpaces(s:String):string; begin Repeat Result:=s; s:=StringReplace(Result,' ',' ',[rfReplaceAll]); //заменяем все двойные пробелы на одинарные Until Result=s; //повторяем до тех пор пока есть двойные пробелы end;