Функция для удаления из строки лишних символов

Previous  Top  Next

    
 

 

Code:

{ **** UBPFD *********** by delphibase.endimus.com ****

>> Функция для удаления из строки "лишних" символов.

 

Функция для удаления из строки "лишних" символов.

Входные параметры:

Input - входная строка, которую необходимо очистить от лишних символов

EArray - строка, содержащая набор разрешенных или запрещеных символов

в зависимости от Action

Action - указывает на то, что из себя представляет массив EArray.

 

Action может принимать следующие значения:

1 - массив EArray представляет собой строку разрешенных символов

2 - EArray - массив запрещенных символов.

 

Зависимости: делал в Д5, 6 под Win9x

Автор:       Ru, DiVo_Ru@rambler.ru, Одесса

Copyright:   DiVo 2002, creator Ru

Дата:        11 ноября 2002 г.

***************************************************** }

 

function strtst(var Input: string; EArray: string; Action: integer): string;

begin

case Action of

   1:

     begin

       while length(Input) <> 0 do

       begin

         if pos(Input[1], EArray) = 0 then

           delete(Input, 1, 1)

         else

         begin

           result := result + Input[1];

           delete(Input, 1, 1);

         end;

       end;

     end;

   2:

     begin

       while length(Input) <> 0 do

       begin

         if pos(Input[1], EArray) <> 0 then

           delete(Input, 1, 1)

         else

         begin

           result := result + Input[1];

           delete(Input, 1, 1);

         end;

       end;

     end;

else

   messagebox(0, 'Не корректный вызов функции.', '', mb_ok);

end;

end;

Пример использования:

 

// 1.

s := edit1.text;

s := strtst(s, '0123456789.', 1);

edit1.text := s;

 

// например на входе: 0.16+

// на выходе будет: 0.16

 

// 2.

s := edit1.text;

s := strtst(s, '/*-+,', 2);

edit1.text := s;

 

// на входе: 0.16+

// на выходе будет: 0.16

 

©Drkb::00895