千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 1分钟学会在java中使用正则表达式验证ip地址

1分钟学会在java中使用正则表达式验证ip地址

来源:千锋教育
发布人:lxl
时间: 2023-06-05 11:44:00 1685936640

  在 Java 中,可以使用正则表达式来验证 IP 地址。IP 地址是一个四组数字,每组数字最多有三位,取值范围是 0~255。因此,可以使用如下的正则表达式来验证 IP 地址:

String regex = "^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\."
+ "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\."
+ "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\."
+ "([01]?\\d\\d?|2[0-4]\\d|25[0-5])$";

   上述正则表达式中使用了分组、字符类、量词和转义符等语法元素。

  下面是一个示例程序,演示如何使用 Java 的正则表达式验证 IP 地址:

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

public class IPAddressValidator {
private static final String IPADDRESS_PATTERN =
"^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\."
+ "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\."
+ "([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\."
+ "([01]?\\d\\d?|2[0-4]\\d|25[0-5])$";

private static final Pattern pattern = Pattern.compile(IPADDRESS_PATTERN);

public static boolean validate(final String ip) {
Matcher matcher = pattern.matcher(ip);
return matcher.matches();
}

public static void main(String[] args) {
String[] ips = {"192.168.1.1", "256.168.1.1", "192.168.01.1", "192.168.1"};
for (String ip : ips) {
System.out.println(ip + ": " + validate(ip));
}
}
}

   在这个示例程序中:

  IPADDRESS_PATTERN 是表示 IP 地址的正则表达式。

  Pattern.compile 函数根据正则表达式创建一个 Pattern 对象。

  validate 函数使用 Pattern.matcher 函数根据指定的 IP 地址字符串创建一个 Matcher 对象,再调用 Matcher.matches 函数来判断该 IP 地址是否符合正则表达式的格式要求。

  在 main 函数中,测试了多个 IP 地址,输出验证结果。

  需要注意的是,上述正则表达式只验证 IP 地址的格式是否正确,不保证其实际可用性。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT