从一段文本提取IP地址

来源:互联网 发布:社交网络 推荐 综述 编辑:程序博客网 时间:2024/06/06 01:20


IP的正则表达式

((?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))))



//根据正则表达式,从文本中提取出匹配的字段        public static List<String> extractString(String text,String regularExpression,String separator){                String[] wordsArr = text.split(separator);                List<String> extractList = new ArrayList<>();                Pattern pattern = Pattern.compile(regularExpression);                for (String s : wordsArr) {                        Matcher matcher = pattern.matcher(s);                        if (matcher.matches()) {                                extractList.add(s);                        }                }                return extractList;        }


调用

            String separator = "\t|\n";            //((?:(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{2})|([1-9]?\d))))            String regularExpression = "((?:(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))\\.){3}(?:25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d))))";            String text = "172.20.71.33\t\n172.20.71.32\t\n172.20.71.31\t\n172.20.71.13\t\n172.20.71.14\t\n";            List<String> l = extractString(text,regularExpression,separator);








0 0