读书人

新手学习delphiTStringList简单有关

发布时间: 2012-10-05 15:34:33 作者: rapoo

新手学习delphi,TStringList简单问题求助,成功马上结贴。
新手学习delphi,TStringList简单问题求助,成功马上结贴。

TStringList有如下数据
123
124
132
134
142
143
213
214
231
234
241
243
312
314
321
324
341
342
412
413
421
423
431
432

取出每行字符串前两位字符进行对比 如果重复则删除 保留一行

123
124
只保留123

//遍历 错误
for i:= 0 to sjList.Count - 1 do
begin
sjTemp := sjList.Strings[0];
sjList.Delete(0);
left12 := copy(sjTemp,1,2);
for j:= 0 to sjList.Count - 1 do
begin
scTemp := sjList.Strings[j];
if left12=Copy(scTemp,1,2) then
begin
sjList.Delete(j);
scList.Add(sjTemp);
ShowMessage(sjList.Text);
end;
end;
end ;

应该怎么写呢?只有20积分了。

[解决办法]

Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);var s:TStringList;    i:integer;begin  s := TStringList.Create;  s.Sorted := true;  s.Text :=  Memo1.Lines.Text;  for i := s.Count - 1 downto 1 do  begin    if leftstr(s[i],2) = leftstr(s[i-1],2) then      s.Delete(i-1);  end;  Memo1.Lines.Text := S.Text;end; 

读书人网 >.NET

热点推荐