求一段简洁快速的字符串排序的方法 比入有 a:='05,07,03,01'写个什么样的函数可以 a:='01,03,05,07' 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 var s:TStringList; a:string;begin a:='05,07,03,01'; s:=TStringList.Create; a:=StringReplace(a,',',#13#10,[rfReplaceAll]); s.Text:=a; s.Sort; a:=StringReplace(s.Text,#13#10,',',[rfReplaceAll]); ShowMessage(a); s.Free;end; var sl :Tstringlist; a :string;begin a:='05,07,03,01'; sl := TstringList.Create; sl.Delimiter:=','; sl.DelimitedText := a; sl.Sort; a:=sl.DelimitedText; showmessage(a);end; function SortStringList(sData: String): String;var AList : TStrings; BList : TStrings; iLoop : Integer; iIndex: Integer;begin AList := TStringList.Create; try AList.Delimiter := ','; AList.DelimitedText := sData; BList := TStringList.Create; try for iLoop := 0 to AList.Count - 1 do begin iIndex := 0; while iIndex < iLoop do begin if AList.Strings[iLoop] < AList.Strings[iIndex] then break; Inc(iIndex); end; BList.Insert(iIndex, AList.Strings[iLoop]); end; sData := BList.DelimitedText; finally BList.Free; end; finally AList.Free; end; Result := sData;end;procedure TForm1.Button1Click(Sender: TObject);begin ShowMessage (SortStringList('05,07,03,01'));end; function SortStringList(sData: String): String;var AList : TStringList;begin AList := TStringList.Create; try AList.Delimiter := ','; AList.DelimitedText := sData; AList.Sort; sData := AList.DelimitedText; finally AList.Free; end; Result := sData;end;procedure TForm1.Button1Click(Sender: TObject);begin ShowMessage (SortStringList('05,07,03,01'));end; 走過路過的來看看,fastReport問題? 寻求delphi 写的ocx控件多线程同步的解决办法? 数据插入数据库问题? Delphi有没有向VB那种引用功能? 动态何如可以注册. 『串口通讯』熟悉MSComm控件的高手来帮帮忙!thx 大家帮忙!一个介绍性的问题 请问,Lcstring Lcsystem 这些都是什么组件?? 怎么样才能将DBGrid的颜色隔一行相同啊,就像这个论坛一样。 求大神 QuickReport 如何能在预览前取得总页码 继续找ksaiy ,aiirii,ysai,jiangsheng等高人帮忙看看 关于Toolbar
a:string;
begin
a:='05,07,03,01';
s:=TStringList.Create;
a:=StringReplace(a,',',#13#10,[rfReplaceAll]);
s.Text:=a;
s.Sort;
a:=StringReplace(s.Text,#13#10,',',[rfReplaceAll]);
ShowMessage(a);
s.Free;
end;
sl :Tstringlist;
a :string;
begin
a:='05,07,03,01'; sl := TstringList.Create;
sl.Delimiter:=',';
sl.DelimitedText := a;
sl.Sort;
a:=sl.DelimitedText;
showmessage(a);end;
var
AList : TStrings;
BList : TStrings;
iLoop : Integer;
iIndex: Integer;
begin
AList := TStringList.Create;
try
AList.Delimiter := ',';
AList.DelimitedText := sData;
BList := TStringList.Create;
try
for iLoop := 0 to AList.Count - 1 do
begin
iIndex := 0;
while iIndex < iLoop do
begin
if AList.Strings[iLoop] < AList.Strings[iIndex] then break;
Inc(iIndex);
end;
BList.Insert(iIndex, AList.Strings[iLoop]);
end;
sData := BList.DelimitedText;
finally
BList.Free;
end;
finally
AList.Free;
end;
Result := sData;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage (SortStringList('05,07,03,01'));
end;
var
AList : TStringList;
begin
AList := TStringList.Create;
try
AList.Delimiter := ',';
AList.DelimitedText := sData;
AList.Sort;
sData := AList.DelimitedText;
finally
AList.Free;
end;
Result := sData;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage (SortStringList('05,07,03,01'));
end;