java进行ip号码段正则匹配

java正则匹配IP号码段

public static boolean IPMatch(List ips, String ip) {
        if (ips.contains(ip)) {
            return true;
        }

        for (int i = 0; i < ips.size(); i++) {
            List lip = Arrays.asList(ips.get(i).toString().split("\\."));
            String re = "^";
            for (int j = 0; j < lip.size(); j++) {
                String num = lip.get(j).toString();
                if (num != "*") {
                    re += num + ".";
                } else {
                    re += "\\d{0,3}.";
                }
                if (j == lip.size()) {
                    re = re.substring(0, re.length() - 1).toString() + "\\$";
                }
            }

            Pattern pattern = Pattern.compile(re);
            Matcher matcher = pattern.matcher(ip);
            if (matcher.matches()) {
                return true;
            }
        }
        return false;
    }
时间: 2024-08-25 21:52:46

java进行ip号码段正则匹配的相关文章

Java实现正则匹配HTML中获取的图片链接

package demo; import java.io.File; import java.text.Collator; import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Demo {

2-常用的正则匹配规则(会员名,真实姓名,邮箱,身份证号码,邮箱)

一.常见的正则匹配规则: 常见的匹配规则有 会员名,真实姓名,邮箱,身份证号码,邮箱等等 1.用户名 要求:会员名以汉字或字母开头,有3-18位数字,字母,下划线,汉字组成 正则:reg1 = /^[\u4e00-\u9fa5a-zA-Z][0-9a-zA-Z_\u4e00-\u9fa5]{2,17}/; 2.真实姓名 要求:真实姓名是2-6位的汉字组成 正则:reg2 = /^[\u4e00-\u9fa5][\u4e00-\u9fa5]{1,5}$/; 3.密码 要求:由6-16位的数字,字母

关于JAVA正则匹配空白字符的问题(全角空格与半角空格)

今天遇到一个字符串,怎么匹配空格都不成功!!! 我把空格复制到test.properties文件 显示“\u3000” ,这是什么? 这是全角空格!!! 查了一下    \s    不支持全角 1."\s"匹配的是哪一种空格? 正则表达式中\s匹配任何空白字符,包括空格.制表符.换页符等等:中文全角空格 \s 并不能匹配中文全角空格. \s 只能匹配下面六种字符(详见 java.util.regex.Pattern 的 API DOC): 半角空格( ) 水平制表符(\t) 竖直制表符

4-30 Java正则匹配

做CC时经常要用正则表达式过滤数据,当时洗的数据比较复杂,规则比较多.这次做leetcode,复习一下Java的正则匹配.Leetcode 537. Complex Number Multiplication 从表示复数的字符串里把实部和虚部取出来. http://blog.csdn.net/yin380697242/article/details/52049999 Pattern类,构造函数是私有类型,不能通过new新建,要通过Pattern.compile()获得一个匹配模式.Pattern

java 正则匹配提取html纯文本

本文来自于我的个人博客: java 正则匹配提取html纯文本 做内容的大家都知道,从html中直接提取纯文本是一个很大的问题,现将我做的正则匹配贴上: import java.util.regex.Matcher; import java.util.regex.Pattern; public class TestReg { static String reg = "<[a-zA-Z]+.*?>([\s\S]*?)</[a-zA-Z]*>"; public st

如何用正则匹配这段文本

"<p style="text-align:center;">1 您不用压货,零库存,我们为您一件代发.2 本公司以批发为主,利润低薄,量大从优 .3 本厂鞋子自主生产,不打标不贴牌4 退换货7天退15天换,要求:(1)不影响二次销售.(2)不收过季产品5 气味.色差.配饰易掉.不明显处的胶渍.肉眼在1.5米以外不能明显分辨的划痕或不影响穿着的小瑕疵,不属于质量问题,鞋子都是才从工厂加工出来,部分鞋子肯定有轻微的味道,放在通风处一两天就消失了.每个人用的显示器不一

[转载]正则匹配任意字符(包括换行)

(注:元字符包括 | ( ) [ ] { } ^ $ * + ? . ) 匹配中文字符的正则表达式: [u4e00-u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^x00-xff]评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) 匹配空白行的正则表达式:ns*r评注:可以用来删除空白行 匹配HTML标记的正则表达式:<(S*?)[^>]*>.*?</>|<.*? />评注:网上流传

正则匹配酷6视频url后使用接口引用案例

通过酷6的一个转发接口,使用java正则来获取匹配酷6网大部分视频网址链接,抓取获得ip.flash.title等属性用于内嵌视频展示;关键代码是抓取数据,展示代码很简单.大致效果图如下: 引用视频: 展示视频: 1.抓取数据代码: <span style="font-family:KaiTi_GB2312;font-size:18px;"> /** * 酷6新接口方法 * add by yangkai * @param videoUrl * @return */ prot

正则匹配:Email 密码强度 身份证 手机号 日期等

正则表达式,一个十分古老而又强大的文本处理工具,仅仅用一段非常简短的表达式语句,便能够快速实现一个非常复杂的业务逻辑.熟练地掌握正则表达式的话,能够使你的开发效率得到极大的提升.下面是在前端开发中经常使用到的20个正则表达式. 正则表达式经常被用于字段或任意字符串的校验,如下面这段校验基本日期格式的JavaScript代码: var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/; var r = fieldValue.match(reg); if(r