如题

解决方案 »

  1.   

    procedure TForm1.Button1Click(Sender: TObject);
    var
    aa:string;
    begin
    aa:='123毫米';
    showmessage(copy(aa,1,3));
    end;
      

  2.   

    //未测试
    var
    aa,bb:string;
    i:integer;
    begin
    aa:='123毫米';
    bb:= '';
    for i := 0 to length(aa) do
      if aa[i] in ['0'...'9'] then  bb := bb+aa[i]; 
    end;
      

  3.   

    var bool:boolean=true;
       i:integer=1;
       s:string
    while bool do
    begin
     s:=copy(edit1.text,1,i);
     try
      strtoint(s)
      except
       begin
       s:=copy(edit1.text,1,i-1)
       bool:=false;
      end;
      end;
    inc(i);
    end;
    我这样是确定了第一个便是数字的,你也可以先找出来再调一下位置!
      

  4.   

    把函数改一下吧
    strtoint
    strtofloat吧!
      

  5.   

    这里有怎么样读取中文字符的一段代码
    procedure TForm1.Button1Click(Sender: TObject);
    var
        str: string;
        i: integer;
        temp : string;
    begin
        str := 'i love you 中国';
        temp := '';
        i := 0;
        while i < length(str) do
        begin
            while IsDBCSLeadByte(byte(str[i])) do
            begin
                temp := temp + widestring(str[i]+str[i+1]);
                i := i+2;
            end;
            inc(i);
        end;
        showmessage(temp);
    end;end.
    来自:naughtyboy(一切都是为了明天) ( )
      

  6.   

    Function CutStr(Str:string):string;
    var I,J:integer;
    begin
      For I:=1 to Length(str) do
      begin
         if Str[i]不是数字 then 
         begin
           J:=i;
           break;
         end;
      end;
      Result:=Copy(Str,1,J);
      

  7.   

    楼主的意思是这样的吗:
        你只想从这个字符串中找数字信息?如果是这样的话,不妨试一下以下代码!    (在Form中加eidt,label,command控件)
         
        procedure TForm1.Button1Click(Sender: TObject);
        begin
            label1.Caption:=copy(edit1.text,1,length(edit1.text)-4);
        end;
         
        注:因copy()返回的是字符串,如果想将其转换为数字型,可用strtoint()或
                strtofloat()进行数据格式转换!