关于Delphi的Memo1删除重复项的问题!
procedureTForm1.Button1Click(Sender:TObject);varl,i:Integer;beginl:=1;while(True)dobe...
procedure TForm1.Button1Click(Sender: TObject);
var
l,i: Integer;
begin
l := 1;
while (True) do
begin
for i:=0 to Memo1.Lines.Count-1 do
begin
if (Pos(Memo1.Lines[i], ' ' + Memo1.Lines[l]) >= 1) then Memo1.Lines.Delete(i);
end;
if (l >= Memo1.Lines.Count - 1) then Break;
Inc(l,1)
end;
end;
实现Memo列表中的
Memo1
Memo1
Memo2
Memo2
Memo3
Memo4
Memo4
Memo3
运行结果为
Memo1
Memo2
Memo3
Memo4
然后在点击按钮后就没有任何效果 因为没有重复项!
小弟不才无法解决希望大大能解决,这里先谢谢大家了!
var
i:integer;
s:string;
begin
for i:=0 to memo1.Lines.Count -1 do //循环总数
begin
s:=memo1.Lines[i];//取得比较字符串
memo1.Lines.Delete(i);//去除比较字符串
while memo1.Lines.IndexOf(s)>-1 do
memo1.Lines.Delete(memo1.Lines.IndexOf(s)); //删除所有与s相同的重复字符串
memo1.Lines.Insert(i,s); //恢复s1
end;
解决了给分给你吧,虽然你没写代码但是提示让我找到答案了! 展开
var
l,i: Integer;
begin
l := 1;
while (True) do
begin
for i:=0 to Memo1.Lines.Count-1 do
begin
if (Pos(Memo1.Lines[i], ' ' + Memo1.Lines[l]) >= 1) then Memo1.Lines.Delete(i);
end;
if (l >= Memo1.Lines.Count - 1) then Break;
Inc(l,1)
end;
end;
实现Memo列表中的
Memo1
Memo1
Memo2
Memo2
Memo3
Memo4
Memo4
Memo3
运行结果为
Memo1
Memo2
Memo3
Memo4
然后在点击按钮后就没有任何效果 因为没有重复项!
小弟不才无法解决希望大大能解决,这里先谢谢大家了!
var
i:integer;
s:string;
begin
for i:=0 to memo1.Lines.Count -1 do //循环总数
begin
s:=memo1.Lines[i];//取得比较字符串
memo1.Lines.Delete(i);//去除比较字符串
while memo1.Lines.IndexOf(s)>-1 do
memo1.Lines.Delete(memo1.Lines.IndexOf(s)); //删除所有与s相同的重复字符串
memo1.Lines.Insert(i,s); //恢复s1
end;
解决了给分给你吧,虽然你没写代码但是提示让我找到答案了! 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询