用copy()加pos()
查帮助看用法吧

解决方案 »

  1.   

    使用pos来定位,然后使用copy来取得字符串
      

  2.   

    function SplitString(const source,ch:string):tstringlist;
    var
     temp:string;
     i:integer;
    begin
     result:=tstringlist.Create;
     temp:=source;
     i:=pos(ch,source);
     while i<>0 do
     begin
       result.Add(copy(temp,0,i-1));
       delete(temp,1,i);
       i:=pos(ch,temp);
     end;
     result.Add(temp);
    end;
    调用:
    s:=splitstring('afsdfsdaaa|bbfdsfsdb|ccc','|');
    for i:=0 to s.Count-1 do
     b:=b+s.Strings[i]+#13;
    showmessage(b);
    s.free;
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      with TStringList.Create do try
        Delimiter := ',';
        DelimitedText := 'a,b,c,d,e,f';
    (*
        Text := StringReplace('a,b,c,d,e,f', ',', #13#10, [rfReplaceAll]);
    *)
        ShowMessage(Text);
      finally
        Free;
      end;
    end;