PDA

View Full Version : چگونگی تشخیص اینکه یک رشته عدداست



reza_moridi
سه شنبه 12 خرداد 1383, 18:34 عصر
باسلام
لطفابگوئیدکه چگونه تشخیص بدهم که یک رشته عدد است یاخیر

Hidarneh
سه شنبه 12 خرداد 1383, 19:08 عصر
b:=true;
try
i:=strtoint(s);
except
b:=false;
// is not number
end;

Mohammad S
سه شنبه 12 خرداد 1383, 19:13 عصر
اگر رشته شما فقط باید عددی باشد از اول اجازه نده که کاربر غیر از عدد چیز دیگری وارد کنید.
کد زیر که در رویداد OnKeyPress نوشته می شود به شما کمک خواهد کرد:

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in ['0'..'9','-','+',#8,#13]) then
key:=#0;
end;

سار
سه شنبه 12 خرداد 1383, 22:52 عصر
میتونی از تابع Val هم استفاده کنی مثلا

Val(A,B,ErrorCode)
اگر متغیر A فقط عدد نباشه اندیس اولین کاراکتر تو ErrorCode برگشت داده میشه.