(Java 功能代码) 正则式判断IP地址

符号 阅读:654 2021-03-31 22:29:56 评论:0

源代码:

/**  
 * @Title:IpAddress.java  
 * @Package:com.you.dao  
 * @Description:用正则表达式判断是否为IP  
 * @Version V1.2.3  
 */   
package com.you.dao;   
   
import java.util.regex.Matcher;   
import java.util.regex.Pattern;   
   
/**  
 * @类名:IpAddress  
 * @描述:用正则表达式判断是否为IP  
 */   
public class IpAddress    
{   
    public static class IpAdd   
    {   
        public boolean isIP(String addr)   
        {   
            if(addr.length() < 7 || addr.length() > 15 || "".equals(addr))   
            {   
                return false;   
            }   
            /**  
             * 判断IP格式和范围  
             */   
          <span style="color:#ff0000;">  String rexp = "([1-9]|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])(\\.(\\d|[1-9]\\d|1\\d{2}|2[0-4]\\d|25[0-5])){3}";  </span> 
               
            Pattern pat = Pattern.compile(rexp);     
               
            Matcher mat = pat.matcher(addr);     
               
            boolean ipAddress = mat.find();   
   
            return ipAddress;   
        }   
    }   
   
    /**  
     * @Title : main  
     * @Type : IpAddress  
     * @date : 2014年3月4日 下午10:55:06  
     * @Description : IP可能的范围是0-255.0-255.0-255.0-255  
     * @param args  
     */   
    public static void main(String[] args)    
    {   
        /**  
         * 符合IP地址的范围  
         */   
         String oneAddress = "10.127.30.45";   
         /**  
         * 符合IP地址的长度范围但是不符合格式  
         */   
         String twoAddress = "127.30.45";   
         /**  
         * 不符合IP地址的长度范围  
         */   
         String threeAddress = "7.0.4";   
         /**  
         * 不符合IP地址的长度范围但是不符合IP取值范围  
         */   
         String fourAddress = "255.255.255.2567";   
            
         IpAdd ipAdd = new IpAdd();   
            
         //判断oneAddress是否是IP   
         System.out.println(ipAdd.isIP(oneAddress));   
            
         //判断twoAddress是否是IP   
         System.out.println(ipAdd.isIP(twoAddress));   
            
         //判断threeAddress是否是IP   
         System.out.println(ipAdd.isIP(threeAddress));   
            
         //判断fourAddress是否是IP   
         System.out.println(ipAdd.isIP(fourAddress));   
    }   
   
}  


声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号