delphi IsIPAdress 非正则表达式验证IP的方法

时间:2023-03-09 07:38:18
delphi IsIPAdress 非正则表达式验证IP的方法
function IsIPAdress(const Value:String):Boolean;
var n,x,i: Integer;
Posi:Array[..]of Integer;
Oktet:Array[..]of String;
begin
Result := true;
x := ; // es dürfen nur Zahlen und Punkte vorhanden sein
for n := to Length(Value) do
if not (Value[n] in [''..'','.'])
then
begin
// ungültiges Zeichen -> keine IP-Adresse
Result := false;
break;
end
else
begin
// Zähle die Punkte
if Value[n] = '.'
then
begin
Inc(x);
Posi[x] := n;
end
else
begin
Oktet[x+] := Oktet[x+] + Value[n];
end;
end; for i := to do
if (StrToInt(Oktet[i])>)then Result := false; // es müssen genau 3 Punkte vorhanden sein
if x <>
then
begin
// Anzahl der Punkte <> 3 -> keine IP-Adresse
Result := false;
end;
end;