七叶笔记 » java编程 » java判断是否ip

java判断是否ip

java使用正则表达式判断是否是IP:

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格式和范围              */              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}";                            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));      }    }

正则表达式定义了字符串的模式。

正则表达式可以用来搜索、编辑或处理文本。

正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。

相关文章