Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

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

Delphi , Синтаксис , Текст и Строки



Автор: DiVo
WEB-сайт: http://delphibase.endimus.com

{ **** 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

Функция Delphi, именуемая strtst, удаляет нежелательные символы из переданного входного строки в зависимости от действия и массива символов (EArray). Функция принимает три параметра:

  1. Input: входная строка, которую нужно очистить.
  2. EArray: строка, содержащая либо разрешенные, либо запрещенные символы, в зависимости от значения параметра Action.
  3. Action: целочисленный параметр, определяющий, содержит EArray разрешенные или запрещенные символы.

Функция использует оператор case для определения способа обработки входной строки в зависимости от значения параметра Action.

Пункт 1: Action = 1 (Разрешенные символы)

В этом случае функция проходит по входной строке и проверяет, является ли каждый символ элементом EArray. Если нет, функция удаляет этот символ из входной строки. Остальные символы конкатенируются для формирования результата очищенной строки.

Пункт 2: Action = 2 (Запрещенные символы)

В этом случае функция проходит по входной строке и проверяет, является ли каждый символ элементом EArray. Если нет, функция оставляет этот символ в входной строке. Остальные символы конкатенируются для формирования результата очищенной строки.

Обработка ошибок

Если Action не равен 1 или 2, функция отображает сообщение об ошибке с помощью Messagebox.

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

Предоставленный пример демонстрирует использование этой функции:

  1. Удалите нежелательные символы из текстового поля (edit1) и замените их разрешенными символами (цифрами, точкой и периодом).
s := edit1.text;
s := strtst(s, '0123456789.', 1);
edit1.text := s;
  1. Удалите нежелательные символы из текстового поля (edit1) и оставьте только запрещенные символы (слеш, звездочка, тире, запятая и период).
s := edit1.text;
s := strtst(s, '/*-+,', 2);
edit1.text := s;

В целом, эта функция обеспечивает гибкий способ очистки входных строк, удаляя нежелательные символы в зависимости от установленного действия.

Функция для удаления из строки лишних символов - это утилита, которая позволяет очистить строку от не нужных символов, используя массив разрешенных или запрещенных символов и указание действия над этим массивом.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Текст и Строки ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-01-29 03:08:01/0.0034668445587158/0