有一字符串,例如'20,21,39,29',要把其中的整数分离出来放到一个数组里去,请问用什么函数

解决方案 »

  1.   

    var
      TempInt:Integer;
    Str:='20,21,39,29...';
    i:=0;
    while Pos(',',Str)<>0 do
    begin
      try  
        TempInt:=StrToInt(Copy(Str,1,Pos(',',Str)-1));
      except
        Str:=Copy(Str,Pos(',',Str)+1,Length(Str)-Pos(',',Str)); 
        exit;
      end;  
      Result[i]:=StrToInt(Copy(Str,1,Pos(',',Str)-1));
      Str:=Copy(Str,Pos(',',Str)+1,Length(Str)-Pos(',',Str)); 
      Inc(i);
    end;
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
      s,s1:string;
      i,j:integer;
    begin
      s:='20,30,40,50';
      i:=length(s);
      for j:=0 to i-1 do
      begin
        if s[j]=',' then
          begin
            s1:=s[j-2]+s[j-1];
            showmessage(s1);
          end;
      end;
      if s[i]<>',' then
      begin
        s1:=s[i-1]+s[i];
        showmessage(s1);
      end
      else
        begin
          s1:=s[j-2]+s[j-1];
          showmessage(s1);
        end;
    end;
      

  3.   

    procedure Splite(s: String; l: TStrings);
    begin
      ExtractStrings([','],[#9,' '],PChar(s),l);
    end;到了TStrings,转到数组,就不用我写了吧!