Zum prüfen ob ein String eine Nummer ist benutze ich immer gerne das hier
Delphi-Quellcode:
function IsNumeric(const aString: string; const bAcceptNegativeNumbers: Boolean = True): Boolean;
var
bRes: Boolean;
begin
bRes := StrToInt64Def(aString, 0) = StrToInt64Def(aString, 1);
if bRes and (not bAcceptNegativeNumbers) and (StrToInt64(aString) < 0) then
bRes := False;
Result := bRes;
end;
IsNumeric('123'); // True
IsNumeric('-123'); // True
IsNumeric('-123', False); // False
IsNumeric('ABC'); // False