在delphi中如何判断一个字符串由数字组成

解决方案 »

  1.   

    function IsNumeric(srcStr:string;):boolean;
    var 
        i:integer;
    begin
      result:=true;
      for i:=1 to length(srcStr) do
       if  not (ord(srcStr[i]) in [$30..$39] ) then
         begin
           result:=false;
           break;
         end;end;
      

  2.   

    自己编写这个函数:
    function IsNumber(const str: string): boolean;
    begin
      Result := true;
      try
        StrToInt(str);
      except
        Result := false;
      end;
    end;
      

  3.   

    procedure TForm1.Button1Click(Sender: TObject);
      function StrIsNumber(Str: String): Boolean;
      const
        Number = ['0'..'9'];
        sign = ['-', '+'];
      var
        i: integer;
      begin
        result := False;
        if not (str[1] in sign) and  not (str[1] in Number) then
          exit;    for i := 2 to length(Str) do
        begin
          if not (str[i] in Number) then
            exit;
        end;    result := True;
      end;
    begin
      if StrIsNumber(edit1.Text) then
      begin
        Showmessage('Is Number');
      end
      else
        Showmessage('Is not Number');
    end;