delphi 语言中 我想做个 TStringList 类的运算
a:=TStringList.Create;a.CommaText:='aaa,bbb,ccc';b:=TStringList.Create;b.CommaText:='...
a:= TStringList.Create; a.CommaText:='aaa,bbb,ccc';
b:= TStringList.Create; b.CommaText:='aaa,bbb';
c:= TStringList.Create;
------------想得到 c:=a - b 即:结果为b.CommaText:='ccc';
请问怎么实现? 貌似TStringList 不能直接进行运算 展开
b:= TStringList.Create; b.CommaText:='aaa,bbb';
c:= TStringList.Create;
------------想得到 c:=a - b 即:结果为b.CommaText:='ccc';
请问怎么实现? 貌似TStringList 不能直接进行运算 展开
2个回答
展开全部
先把a加到c,再循环查找b的项目并删除,但你的每个项目不能相同,例如。a.CommaText:='aaa,bbb,aaa,ccc'出现2个aaa的不好算了。
var a,b,c:TStringList;
i:integer;
begin
a:= TStringList.Create; a.CommaText:='aaa,bbb,ccc';
b:= TStringList.Create; b.CommaText:='aaa,bbb';
c:= TStringList.Create;
c.Assign(a);
for i:=0 to b.Count -1 do begin
if c.IndexOf(b[i])>-1 then c.Delete(c.IndexOf(b[i]));
end;
showmessage(c.CommaText);
end;
var a,b,c:TStringList;
i:integer;
begin
a:= TStringList.Create; a.CommaText:='aaa,bbb,ccc';
b:= TStringList.Create; b.CommaText:='aaa,bbb';
c:= TStringList.Create;
c.Assign(a);
for i:=0 to b.Count -1 do begin
if c.IndexOf(b[i])>-1 then c.Delete(c.IndexOf(b[i]));
end;
showmessage(c.CommaText);
end;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询