//函 数 名: IsDigit
//返 回 值: boolean
//日       期:2011-03-01
//参       数: String
//功       能: 判断一个字符串是否为数字
//作       者:liubin
//***************************************************************************

function IsDigit(S:String):Boolean; //变量S为要判断的字符串,返回true则正确
var
i,j:integer;

begin
    Result:=True;
    j :=0 ;
    for i :=1 to length(s) do
    begin
       if not (s[i] in ['0'..'9','.'])then   //判断字符串每个字符即s[i],是否为"0"到'9"数字及".'
         Result:=False;
       if s[i]='.' Then //统计字符串中"."的个数
         j:=j+1;
    end;

    if j > 1 then   //字符串中"."的个数大于1
       Result:=False;

    if (s[1]='.') or (s[length(s)]='.') then //字符串中"."的在最前面和最后面
       Result:=False;
    //增加, 字符串中"."的位置之前有两个"0"判断
    s:=copy(s,1, pos('.', S)-1); //取字符串中"."的位置之前字符
    j:=0;
    for i:=1 to length(s) do
    begin
       if s[i]='0' then
          j:=j+1;
    end;

    if j > 1 then    //字符串中"."的位置之前有两个"0"
       Result:=False;
end;

 

摘自 #Define