AFON // радиотехник affonya@mail.ru
← Все проекты Delphi

Замена подстроки

Поиск и замена всех вхождений подстроки в тексте.

DP.17 · Строки

Задача

Заменить в строке все вхождения одного фрагмента на другой.

Алгоритм

Функция StringReplace с флагом rfReplaceAll обрабатывает сразу все вхождения.

Исходный код

⇩ Скачать 17-zamena-podstroki.dpr

program ZamenaPodstroki;
{$mode delphi}{$apptype console}
uses SysUtils;
var s, a, b, r: string;
begin
  Write('Строка: '); ReadLn(s);
  Write('Что заменить: '); ReadLn(a);
  Write('На что: '); ReadLn(b);
  r := StringReplace(s, a, b, [rfReplaceAll]);
  WriteLn('Результат: ', r);
  ReadLn;
end.

Пояснения

Флаг rfIgnoreCase позволил бы искать без учёта регистра.