Delphi 下的拆分字符串的方法-源代码

来源:互联网 发布:手机cpu调节软件 编辑:程序博客网 时间:2024/05/21 19:41

{
本程序段说明:  将字符串按定界符分成若干子串,并将子串-->Sx[](全程变量),返回子串个数;
               Sx[0]-->第零个字符串,Sx[1]-->第二个字符串,以此类推...
程序段功能:   字符串分割程序
编制日期:     2008/01/09-2008/01/09
版本号:       Ver: 1.0.0.0.0
运行条件:
运行软件环境: WINDOWS NT,2000,XP,98,ME&95
运行硬件环境: PC AT&T COMPATIBLE
编制人员:     FOOLCODE
修正人员:     FOOLCODE
修正日期:     2008/01/09
故障点:
修正故障点:
测试时间:
}
Function splitstring(delimiter:string; inputstring:string; Var Sx : array[0..100] of string):integer;
var
        tempstring:string;
        i,j,total_sub:integer;
        stringlong:longint;
begin
        { 清控Sx[]中的字符串;}
        for j:=0 to 100 do
        begin
            Application.ProcessMessages;
            Sx[j]:='';
        end;
        { 初始化相关变量;}
        total_sub:=0;
        tempstring:='';
        { 取得字符串的长度;}
        stringlong:=length(trim(inputstring));
        { 获取子串 并将子串--> Sx[], 返回子串个数 0-->没有子串;}
        for i:=1 to stringlong do
        begin
              Application.ProcessMessages;
              tempstring:=copy(trim(inputstring),i,1);
              if tempstring <> delimiter then
              begin
                        Sx[total_sub]:=Sx[total_sub]+tempstring;
              end
              else
              begin
                        if copy(trim(inputstring),i+1,1)= delimiter then
                        begin
                                total_sub:=total_sub;
                        end
                        else
                        begin
                                total_sub:=total_sub+1;
                        end;
              end;
        end;
        result:=Total_sub;
end;