如我想把
'aaa,bbb,ccc'删分为
'aaa'
'bbb'
'ccc'

解决方案 »

  1.   

    你是要分成三个好象没有,替代指定的字符到是有,stringreplace
    你就自己写函数吧
      

  2.   

    自己写一个拆分函数吧,将拆分好的存如一TStrings对象中
    procedure StringToStrings(const Text: string; List: TStrings); //假设拆分符号为','  
    var pStart, pEnd: PChar;
        AStr: String;
        nLen: Integer;
    begin
      pStart := PChar(Text);
      pEnd := StrPos(pStart, ',');
      while Assigned(pEnd) and (StrLen(pStart) <> 0) do
      begin
        nLen := pEnd - pStart;
        SetLength(AStr, nLen);
        StrLCopy(PChar(AStr), pStart, nLen);
        List.Add(AStr);
        pStart := pEnd;
        Inc(pStart);
        pEnd := StrPos(pStart, ',');
      end;
    end;
      

  3.   

    对不住,上述代码会吃掉最后一组字符串,修改为:
    在最后一个end前加上一句List.Add(pStart);
    另外,没有进行差错控制,请自己加上
      

  4.   

    s := 'aaa,bbb,ccc';a := copy(s, 0, pos(',', s)-1);          // Output 'aaa's := StringReplace(s, 'aaa,', '', []);   // Output 'bbb'
    b := copy(s, 0, pos(',', s)-1);          c := StringReplace(s, 'bbb,', '', []);   // Output 'ccc'