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 do begin P := POS(Target,string); DELETE(string,P,Length(Target)); end; |
[000257]