本篇文章给大家分享的是有关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));
}
}
正则表达式定义了字符串的模式。
正则表达式可以用来搜索、编辑或处理文本。
正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。
以上就是java用正则表达式判断IP格式的方法,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。