直接给实例,现在可以满足的,但是你完全可以变更一下,如在不知道具体是AAA和BBB等
procedure TForm1.Button1Click(Sender: TObject);
var
vstart,vend:Integer;
i:Integer;
vsubstr:String;
begin
//--删除AAA和BBB之间的
//-1.行与行之间
vstart:= Memo1.Lines.IndexOf('AAA');
vend:=Memo1.Lines.IndexOf('BBB');
for i:=vstart+1 to vend-1 do
begin
Memo1.Lines.Delete(i);
end;
Memo1.Lines.Insert(vstart+1,'CCC');
//--2.同行数据之间
vsubstr:=copy(Memo1.Lines.Text,Pos('AAA',Memo1.Lines.Text)+3,Pos('BBB',Memo1.Lines.Text)-Pos('AAA',Memo1.Lines.Text)-3);
Memo1.Lines.Text:=StringReplace(Memo1.Lines.Text,vsubstr,'CCC',[rfReplaceAll,rfIgnoreCase]);
//--删除倒数第二行和第二行
Memo1.Lines.Delete(Memo1.Lines.Count-2);
Memo1.Lines.Delete(1);
end;