首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

Delphi 判断一个字符串是不是为数字

2012-07-01 
Delphi 判断一个字符串是否为数字//函 数 名: IsDigit//返 回 值: boolean//日?????? 期:2011-03-01//参??

Delphi 判断一个字符串是否为数字

//函 数 名: 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;

热点排行