有一字符串里有几个词,词语词之间有逗号分割,如何能吧词分开显示?
比如:有五个单词,吧这五个单词分别显示在五个EDIT里.如何做?

解决方案 »

  1.   

    做一个VARIANT类型的数组..
    只要一有逗号出现就分别写到EDIT里..
      

  2.   

    var
      i,j: integer;
    begin
      j:=1;
      i:=pos(',', Str);
      while i>0 do  
      str[j] := Copy(Str, P, 3);  //str[1..100]為已定義的字符串數組
      j:=j+1;
      Delete(Str, 1, i);
      i:=pos(',', Str);
      end;
      

  3.   

    可以用pos 函数定位','找出','的位置,在用copy 函数截取字符串
    pos和copy 的用法见帮助
      

  4.   

    procedure strs(var str:string);
    var
    edit:tedit;
    i:integer;
    str1,turnstr:string;
    begin
    if pos(',',str)<>0 then
       begin
       i:=pos(',',str);
       turnstr:=copy(str,1,i-1);
       edit:=tedit.Create(application);
       edit.parent:=form1;
       edit.Text:=turnstr;
       edit.Left:=j;
       edit.top:=j;
       j:=j+10;
       delete(str,1,i);
       strs(str);
       end;
    end;procedure TForm1.Button1Click(Sender: TObject);
    var
    str:string;
    begin
    j:=0;
    str:=edit1.text+',';
    strs(str);
    end;老弟我的方法是用递归做的,你试试,保你满意!:)你也知道递归很容易死机的,呵呵,这个程序段死了好几回了,如果你不给分的话,呵呵呵,我会伤心的:)祝:身体健康!!
      

  5.   

    其中edit1.text中的text格式是1,2,3,4,5,6你也可以是1,2,3,4,5,6,
    如果是这样,这句应该这样写str:=edit1.text;明白??:)