java编写正则表达式,判断给定的是否是一个合法的IP地址

 我来答
惠企百科
2022-12-01 · 百度认证:北京惠企网络技术有限公司官方账号
惠企百科
惠企百科网是一家科普类综合网站,关注热门中文知识,集聚互联网精华中文知识,本着自由开放、分享价值的基本原则,向广大网友提供专业的中文知识平台。
向TA提问
展开全部
正则表达式匹配ip地址,实际上就是分别判断每个点直接的数字是否符合规范。\x0d\x0apackage com;\x0d\x0a import java.util.regex.Matcher;\x0d\x0a import java.util.regex.Pattern; \x0d\x0a public class TestRegex { \x0d\x0a public static boolean isboolIP(String ipAddress){ \x0d\x0a String ip="(2[5][0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})"; \x0d\x0a Pattern pattern = Pattern.compile(ip); \x0d\x0a Matcher matcher = pattern.matcher(ipAddress); \x0d\x0a return matcher.matches();\x0d\x0a } \x0d\x0a /** * @param args \x0d\x0a */ \x0d\x0a public static void main(String[] args) { \x0d\x0a // TODO Auto-generated method stub \x0d\x0a String ipAddress1 = "10."; \x0d\x0a String ipAddress2 = "0.0.0.0"; \x0d\x0a String ipAddress3 = "255.255.255.255";\x0d\x0a String ipAddress4 = "192.168.2.1";\x0d\x0a String ipAddress5 = "26445687";\x0d\x0a String ipAddress6 = "nihao"; \x0d\x0a String ipAddress7 = "你好!!"; \x0d\x0a if(isboolIP(ipAddress1)){ \x0d\x0a System.out.println("IP正确"); \x0d\x0a }else{ \x0d\x0a System.out.println("IP错误"); \x0d\x0a } if(isboolIP(ipAddress2)){ \x0d\x0a System.out.println("IP正确"); }else{ \x0d\x0a System.out.println("IP错误"); \x0d\x0a } if(isboolIP(ipAddress3)){ \x0d\x0a System.out.println("IP正确"); }else{ \x0d\x0a System.out.println("IP错误"); \x0d\x0a } \x0d\x0a if(isboolIP(ipAddress4)){ \x0d\x0a System.out.println("IP正确"); }else{ \x0d\x0a System.out.println("IP错误");
198901245631
推荐于2018-12-02 · TA获得超过3.5万个赞
知道大有可为答主
回答量:9037
采纳率:92%
帮助的人:1739万
展开全部
正则表达式匹配ip地址,实际上就是分别判断每个点直接的数字是否符合规范。
package com;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class TestRegex {
public static boolean isboolIP(String ipAddress){
String ip="(2[5][0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})\\.(25[0-5]|2[0-4]\\d|1\\d{2}|\\d{1,2})";
Pattern pattern = Pattern.compile(ip);
Matcher matcher = pattern.matcher(ipAddress);
return matcher.matches();
}
/** * @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String ipAddress1 = "10.";
String ipAddress2 = "0.0.0.0";
String ipAddress3 = "255.255.255.255";
String ipAddress4 = "192.168.2.1";
String ipAddress5 = "26445687";
String ipAddress6 = "nihao";
String ipAddress7 = "你好!!";
if(isboolIP(ipAddress1)){
System.out.println("IP正确");
}else{
System.out.println("IP错误");
} if(isboolIP(ipAddress2)){
System.out.println("IP正确"); }else{
System.out.println("IP错误");
} if(isboolIP(ipAddress3)){
System.out.println("IP正确"); }else{
System.out.println("IP错误");
}
if(isboolIP(ipAddress4)){
System.out.println("IP正确"); }else{
System.out.println("IP错误");
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-07-08
展开全部
^[\d]{1,3}.{1}[\d]{1,3}.{1}[\d]{1,3}.{1}[\d]{1,3}$

你没有具体的详细写IP规则,但是这样应该能满足
三个小数点,小数点前后最多三位数,最少一位,如果有需求可联系我
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式