procedure TForm1.Button1Click(Sender: TObject);
var
b,c: integer; //循环用
begin
for c:=0 to Memo3.Lines.Count-1 do//循环得到memo3中的一行
begin
for b:=0 to Memo2.Lines.Count-1 do//循环得到memo2中的一行
begin
memo1.Text:= stringreplace(memo1.Text,Memo2.Lines.Strings[b],Memo3.Lines.Strings[c],[rfreplaceall]);//用memo2中的一行来搜索memo1中相同的文字,用memo3中的一行代替该段文字
end;
end;
end;
这样memo1中的全部行会被替换成memo3的第一行真心求各位大神解答
var
b,c: integer; //循环用
begin
for c:=0 to Memo3.Lines.Count-1 do//循环得到memo3中的一行
begin
for b:=0 to Memo2.Lines.Count-1 do//循环得到memo2中的一行
begin
memo1.Text:= stringreplace(memo1.Text,Memo2.Lines.Strings[b],Memo3.Lines.Strings[c],[rfreplaceall]);//用memo2中的一行来搜索memo1中相同的文字,用memo3中的一行代替该段文字
end;
end;
end;
这样memo1中的全部行会被替换成memo3的第一行真心求各位大神解答
var
b,c: integer; //循环用
begin
for c:=0 to Memo3.Lines.Count-1 do//循环得到memo3中的一行
begin
for b:=0 to Memo2.Lines.Count-1 do//循环得到memo2中的一行
begin
memo1.Text:= stringreplace(memo1.Text,Memo2.Lines.Strings[b],Memo3.Lines.Strings[c],[rfreplaceall]);//用memo2中的一行来搜索memo1中相同的文字,用memo3中的一行代替该段文字
end;
end;
end;不要偷懒啦,还是copy+pos函数吧
iIndex:=pos(memo2.Lines[c],memo1.Lines[b]);
if iIndex>0 then
memo1.Text:= copy(memo1.text,0,iIndex-1)+
memo3.Lines[a]+
copy(memo1.Lines[c],iIndex-1+(length(memo2.Lines[b]),length(memo1.Lines[c]));
for b:=0 to Memo2.Lines.Count-1 do//循环得到memo2中的一行
memo1.Text:= stringreplace(memo1.Text,Memo2.Lines[b],Memo3.Lines[c],[rfreplaceall]);//用memo2中的