Очистка строки (символьное значение числа) от пробелов, нулей и точки
01.01.2007
{ **** UBPFD *********** by delphibase.endimus.com **** >> Очистка строки (символьное значение числа) от пробелов, нулей и точки Функция возращает строку очищенную от символов: пробел, ноль, точка. Зависимости: нет Автор: Виталий, center_sapr@mnogo.ru, Львов Copyright: Witek Дата: 26 апреля 2002 г. ***************************************************** } unit Unit2; interface function StrFl(st: string): string; implementation function StrFl(st: string): string; label p1, p2, p3; var poz: Byte; k: integer; stt: string; begin k := Length(st); if k <= 1 then goto p2; p1: stt := Copy(st, 1, 1); {Очистка от пробелов} if stt = ' ' then begin st := Copy(st, 2, k - 1); k := k - 1; goto p1; end; stt := Copy(st, k, 1); if stt = ' ' then begin st := Copy(st, 1, k - 1); k := k - 1; goto p1; end; p3: poz := Pos('.', st); {Очистка от нулей} if poz = 0 then goto p2; stt := Copy(st, k, 1); if stt = '0' then begin st := Copy(st, 1, k - 1); k := k - 1; goto p3; end; if stt = '.' then {Очистка от точки} begin st := Copy(st, 1, k - 1); end; p2: StrFl := st; end; end. //Пример результатов: //5.000 -> 5 //5.001 -> 5.001 //05.100 -> 05.1