用delphi如何实现对比memo2和memo1,如果memo2里的数据在memo1里找不到,则移动到memo3
3个回答
展开全部
一般情况下需要得到列表型字符串控件都是采用的遍历方法,这里有两个文本控件,所以需要采用两个遍历并且是嵌套进行,下面是实例,刚才测试过:
procedure TForm1.Button3Click(Sender: TObject);
var
x,y:integer;
begin
for x:=0 to memo2.Lines.Count-1 do //遍历第一个memo
for y:=0 to memo3.Lines.Count-1 do //在遍历第一个memo时遍历第二个memo并比较
if memo2.Lines[x]=memo3.Lines[y] then break //如果第一个memo中的字符串在第二个中有相同的,那么就跳出当前的循环,进入下一个字符串的遍历比较循环
else if memo3.Lines.Count-1=y then memo4.Lines.Add(memo2.Lines[x]); //如果在第二个memo中到最后一行都没有相同的,那么就将第一个memo中的当前字符串传递到第三个去
end;
procedure TForm1.Button3Click(Sender: TObject);
var
x,y:integer;
begin
for x:=0 to memo2.Lines.Count-1 do //遍历第一个memo
for y:=0 to memo3.Lines.Count-1 do //在遍历第一个memo时遍历第二个memo并比较
if memo2.Lines[x]=memo3.Lines[y] then break //如果第一个memo中的字符串在第二个中有相同的,那么就跳出当前的循环,进入下一个字符串的遍历比较循环
else if memo3.Lines.Count-1=y then memo4.Lines.Add(memo2.Lines[x]); //如果在第二个memo中到最后一行都没有相同的,那么就将第一个memo中的当前字符串传递到第三个去
end;
展开全部
procedure TForm1.btn1Click(Sender: TObject);
var
I: Integer;
begin
mmo3.Clear;
for I := 0 to mmo2.Lines.Count - 1 do
begin
if mmo1.Lines.IndexOf(mmo2.Lines[I]) < 0 then
mmo3.Lines.Add(mmo2.Lines[I]);
end;
end;
var
I: Integer;
begin
mmo3.Clear;
for I := 0 to mmo2.Lines.Count - 1 do
begin
if mmo1.Lines.IndexOf(mmo2.Lines[I]) < 0 then
mmo3.Lines.Add(mmo2.Lines[I]);
end;
end;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
阿凡达
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询