![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Функция для разворачивания строкDelphi , Синтаксис , Текст и Строки
Автор: DiVo { **** UBPFD *********** by delphibase.endimus.com **** >> Функция для "разворачивания" строк Входные параметры: Input - входная строка, которую необходимо представить в "развернутом виде" Зависимости: стандартный набор включаемых модулей Автор: Ru, DiVo_Ru@rambler.ru, Одесса Copyright: DiVo 2002, creator Ru Дата: 12 ноября 2002 г. ***************************************************** } function DecStr(Input: string): string; var i, j, t: integer; s: string; begin if pos('-', Input) <> 0 then begin while length(Input) <> 0 do begin if Input[1] = ',' then begin i := strtoint(s); delete(Input, 1, 1); result := result + s + ','; s := ''; end else begin if Input[1] = '-' then begin i := strtoint(s); delete(Input, 1, 1); t := pos(',', Input); result := result + s + ','; s := ''; if t = 0 then begin j := strtoint(Input); Input := ''; end else begin j := strtoint(copy(Input, 1, t - 1)); delete(Input, 1, t); end; inc(i); while i < j + 1 do begin result := result + inttostr(i) + ','; inc(i); end; end else begin s := s + Input[1]; delete(Input, 1, 1); end; end; end; end else result := Input; if s <> '' then result := result + s; end; на входе: 1,3,5-10,15 на выходе: 1,3,5,6,7,8,9,10,15 Функция Delphi под именем Вот шаг за шагом, как функция работает:
Пример входных данных "1,3,5-10,15" будет обрабатываться следующим образом:
Функция может быть полезна для обработки строк, содержащих диапазоны значений в конкретном формате. Однако стоит отметить, что функция не обрабатывает ошибки или недопустимый ввод очень хорошо и может выгодно от дополнительных механизмов проверки и обработки ошибок. Функция DecStr предназначена для разворачивания строк, содержащих список чисел, разделенных запятой и диапазонами чисел в формате 'начала-конца', для представления их в виде отдельных чисел. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Текст и Строки ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |