VB里是这样写的
Private command1_click()dim a() as string,b as stringb="1|2|3|4"a()=split(b,"|")for i = 0 to ubound(a)msgbox a(i)nextend sub主要是实现用数组来存放多个字符串与分割字符串函数split()

解决方案 »

  1.   

    给你一个思路完整程序就免了
    定义一个动态数组(最终存储数据)
    建立一个TSTRINGLIST类型的变量(先用来存储分解出来的字符串)
    用一个WHILE循环分解出字串终止条件是pos('|',yourstring)=0
    分解的思路是分解出一段就加到TSTRINGLIST变量里ADD方法可以实现
    然后用个变量存储余下的字符串,当然用COPY()函数解决了但你自已需算出位置
    最后根据TSTRINGLIST变量的COUNT属性定义动态数组的最终大小
    乘下的就是将TSTRINGLIST变量中的数据通过一个循环保存到数组中啦
      

  2.   

    THANKS,但是我刚接触DELPHI,你说的我不是很懂啊。。
      

  3.   

    http://kingron.myetang.com/document/delphi/index.html
      

  4.   

    告诉你一个好方法。
    var
      ts: TStringList;
      s: String;
      i: integer;
    begin
      s := 'a|b|c|d|e';
      s := StringReplace(s, '|', #13#10, [rfReplaceAll]);
      ts := TStringList.Create;
      ts.Text := s;
      for i := 0 to ts.count - 1 do
        ShowMessage(ts[i]);
      ts.Free;
    end;