zoukankan      html  css  js  c++  java
  • ip and port check 正则

    在网页开发中可能会遇到需要对在页面输入的ip和端口进行正确性验证,那么正则表达式就是最有力的工具:

    1:ip的正则表达式:

    格式是由“.”分割的四部分,每部分的范围是0-255;

    每段的正则可以分几部分来写:200—255;100-199;10-99;0-9;

    每一部分对应的正则表达式:   2[0-5][0-5];   1d{2};      [1-9]d;  d

    所以连起来就是d|[1-9]d|1d{2}|2[0-5][0-5]

    那么IP的正则就是(d|[1-9]d|1d{2}|2[0-5][0-5]).(d|[1-9]d|1d{2}|2[0-5][0-5]).(d|[1-9]d|1d{2}|2[0-5][0-5]).(d|[1-9]d|1d{2}|2[0-5][0-5])

    js中表示为:/^(d|[1-9]d|1d{2}|2[0-5][0-5]).(d|[1-9]d|1d{2}|2[0-5][0-5]).(d|[1-9]d|1d{2}|2[0-5][0-5]).(d|[1-9]d|1d{2}|2[0-5][0-5])$/

    2:端口的正则表达式:

    格式是0-65535,。

    同理可以分为几部分来构造:60000-65535;10000-59999;1000-9999;100-999;10-99;0-9;

    每部分的正则是:           6[0-5]{2}[0-3][0-5];       [1-5]d{4};      [1-9]d{3};     [1-9]d{2};[1-9]d; [0-9]

    整理完就是:([0-9]|[1-9]d{1,3}|[1-5]d{4}|6[0-5]{2}[0-3][0-5])

    JS中表示为:/^([0-9]|[1-9]d{1,3}|[1-5]d{4}|6[0-5]{2}[0-3][0-5])$/

    package com.xinwei.util;

    import java.util.regex.Matcher;
    import java.util.regex.Pattern;

    public class CheckUtil {
        public static boolean checkIPAddress(String ipStr) {
            String regex = "([1-9]|[1-9][0-9]|1\d\d|2[0-4]\d|25[0-5])\."
                    + "([1-9]|[1-9][0-9]|1\d\d|2[0-4]\d|25[0-5])\."
                    + "([1-9]|[1-9][0-9]|1\d\d|2[0-4]\d|25[0-5])\."
                    + "([1-9]|[1-9][0-9]|1\d\d|2[0-4]\d|25[0-5])";
            Pattern pattern = Pattern.compile(regex);
            Matcher matcher = pattern.matcher(ipStr);

            if (matcher.matches()) {
    //            System.out.println("true");
                return true;
            } else {
    //            System.out.println("false");
                return false;
            }
        }
        
        public static boolean checkAddress(String addressStr) {
            String regex = "([0-9]|[1-9]\d{1,3}|[1-5]\d{4}|6[0-5]{2}[0-3][0-5])";
            Pattern pattern = Pattern.compile(regex);
            Matcher matcher = pattern.matcher(addressStr);

            if (matcher.matches()) {
                System.out.println("true");
                return true;
            } else {
                System.out.println("false");
                return false;
            }
        }

        public static void main(String[] args) {
            // 10.221.105.225");//true
            // 127.400.600.2");//false
            CheckUtil.checkAddress("65536");
    //        CheckUtil.checkIPAddress("127.400.600.2");
        }
    }

  • 相关阅读:
    cocos日记
    Android 开发经验
    vbs自学备份
    C# 如何在winform中嵌入Excel,内嵌Excel,word
    win7 64位在线编辑dsoframer控件的安装和使用配置
    C# 正则表达式 最全的验证类
    在 Range 对象中,Min (14)必须小于或等于 max (-1)。
    winform Form窗体和UserControl用户空间嵌入Panel容器并填充
    C# Winform防止闪频和再次运行
    Base64编码解码
  • 原文地址:https://www.cnblogs.com/alamps/p/7066178.html
Copyright © 2011-2022 走看看