首页 > Windows开发 > 详细

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

时间:2018-02-15 16:48:54      阅读:395      评论:0      收藏:0      [点我收藏+]
function IsIPAdress(const Value:String):Boolean;
var n,x,i: Integer;
    Posi:Array[1..4]of Integer;
    Oktet:Array[1..4]of String;
begin
  Result := true;
  x := 0;

  // es dürfen nur Zahlen und Punkte vorhanden sein
  for n := 1 to Length(Value) do
    if not (Value[n] in [0..9,.])
      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+1] := Oktet[x+1] + Value[n];
              end;
        end;

  for i := 1 to 4 do
    if (StrToInt(Oktet[i])>255)then Result := false;

  // es müssen genau 3 Punkte vorhanden sein
  if x <> 3
    then
      begin
        // Anzahl der Punkte <> 3 -> keine IP-Adresse
        Result := false;
      end;
end;

 

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

原文:https://www.cnblogs.com/westsoft/p/8449591.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!