如何按 第一个字符空格 为分割字符串?
使AAAAA为一列,而第一个空格后为另一列?-------------原数据如下----------------
AAAAAA       B2 B4 B5 B8 B11
CCCCC  B12 B14 B16 B17
XXXX E10 E15

解决方案 »

  1.   

    Text:= 'AAAAAA      B2 B4 B5 B8 B11';one = copy(Text,1,pos(' ',Text)-1);delete(Text,1,pos(' ',Text));two = Trim(Text);
      

  2.   

    B2 B4 B5 B8 B11 这里面也有空格,你怎么区分和前面(AAAAAA)间的空格
      

  3.   


    分割为:
    【AAAAAA】 【     B2 B4 B5 B8 B11】
    【CCCCC】 【 B12 B14 B16 B17】
    【XXXX】 【E10 E15】

    仅仅【、】内为列
      

  4.   

      i := Pos(' ', LRcvMsg)  //查找第一个空格位置  if i > 0 then  //i<0 则没找到,退出程序
      begin
        S:= Copy(S, pos1, Length(S) - (pos1 -1)); //S就是去除第一个空格后留下的字符串。    
      end;
      附:如果想个空格都要分离,直到最后一个为止,则写一个while 循环
            tempstring  := S; //临时变量 dataarray 是一个临时数据,存储分割后的字符
            while (Pos(' ', S) > 0) do
           begin
             temppos := Pos('|', tempstring); //temppos 是临时变量
               if (temppos = 1) then
               begin
                 dataarray[j] := '';
               end
               else
               begin
                  dataarray[j] := Copy(tempstring, 1, (temppos - 1) - (1 -1));
               end;
               Inc(j);
               tempstring := Copy(tempstring, temppos + 1,Length(tempstring) -
                            (temppos + 1 - 1));
          end;  
      

  5.   

    ss:=Tstringlist.create;
    ss.text:='多行内容';for i:=0 to ss.count-1 do
    begin
      s:=ss[i];
      p:=pos(' ',s);
      第1列:=copy(s,1,p-1);
      第2列:=copy(s,p+1,length(s));
    end;
    ss.free;
      

  6.   

    var
      spliterstr1,spliterstr2:string;
    begin
      spliterstr1:=copy('原数据',1,pos('','原数据')-1);
      spliterstr1:=trim(copy('原数据',pos('','原数据')+1,length('原数据')-length(spliterstr1));
    end;