procedure RemoveInvalid(what, where: string): string;
// what - удаляемая подстрока, where - обрабатываемая строкаvar
tstr: string;
begin
tstr:=where;
while pos(what, tstr)>0 do
tstr:=copy(tstr,1,pos(what,tstr)-1) +
copy(tstr,pos(what,tstr)+length(tstr),length(tstr));
Result:=tstr;
end;
Применение:
NewStr:=RemoveInvalid('<брак>','Этот <брак> в моей строке, и я хочу
удалить из нее этот <брак>');
Другое решение:
Используйте стандартную функцию Pascal DELETE... Пользуясь тем же
примером, вы можете сделать так....
Target:='<брак>';
While POS(Target,string)>0 dobegin
P := POS(Target,string);
DELETE(string,P,Length(Target));
end;
В статье описывается два способа удаления ненужных подстрок из строки в языке Pascal: с помощью процедуры RemoveInvalid и стандартной функции DELETE.
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS