字符串可能是 AA :=Hb 11g/L  WBC 22/L  PLT 33/L  其他44    
    也可能是 AA :=Hb 11g/L  PLT 33/L  
11,22,33,44相对应的是edit1..到edit4的值现在想截取字符串AA中数字(有时是字符)分别放到edit中,请问有什么方法?
  

解决方案 »

  1.   

    是不是数字前都有个空格啊?
    有的话就好办了,你找空格,然后copy后面两个字节的内容
      

  2.   

    字符串可能是 AA :=Hb 11g/L  WBC 22/L  PLT 33/L  其他44     
        也可能是 AA :=Hb 11g/L  PLT 33/L   --------------------
    Hb对应的值是edit1,Plt对应的值是edit3,这样的规律么?
      

  3.   


    var
        str,str2:string;
        i:integer;
        strToken:array[0..3] of string;
    begin
        strToken[0]:='Hb';
        strToken[1]:='WBC';
        strToken[2]:='PLT';    str:='Hb 11g/L  WBC 22/L  PLT 33/L';
        while(Length(str)>0)do
        begin
            str2:=Copy(str,1,Pos(' ',str)-1);
            str:=Copy(str,pos(' ',str)+1,Length(str));
            for i:=0 to 3 do
            begin
                if strToken[i]=str2 then
                begin
                    case i of
                    0:
                        Edit1.Text:=Copy(str,1,2);
                    1:
                        Edit2.Text:=Copy(str,1,2);
                    2:
                        Edit3.Text:=Copy(str,1,2);
                    else
                        Edit4.Text:=Copy(str,1,2);
                    end;
                    break;
                end;
            end;
            str:=Copy(str,pos(' ',str)+2,Length(str));
            if Pos(' ',str)<=0 then
                break;
        end;