匹配IP地址的正则表达式实例
发布时间:2020-12-14 01:35:14 所属栏目:百科 来源:网络整理
导读:package com.accel.dashboard.tool;import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.HashSet;import java.util.Set;import java.util.regex.Matcher;import java.util.regex.Pattern;/** * Created by jason.zhan on 9/10
package com.accel.dashboard.tool; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.HashSet; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * Created by jason.zhan on 9/10/2014. */ public class IPScanner { private IPScanner() {} private static class IPScannerFactory { private static IPScanner instance = new IPScanner(); } public static IPScanner getIPScanner() { return IPScannerFactory.instance; } public Object readResolve() { return getIPScanner(); } /** * @return All the Server IP. * * @param cmd Your command. * */ public Set<String> getServerIP(String cmd) { BufferedReader bufferedReader = null; Set<String> iPSet = new HashSet<String>(); String command = "cmd.exe /c arp -a"; if (cmd != null) { command = cmd; } try { Process process = Runtime.getRuntime().exec(command); bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream())); String regex = "(?:(?:25[0-5]|2[0-4]d|((1d{2})|([1-9]?d))).){3}(?:25[0-5]|2[0-4]d|((1d{2})|([1-9]?d)))"; String line = null; StringBuilder stringBuilder = new StringBuilder(); Matcher matcher = null; while ((line = bufferedReader.readLine()) != null) { stringBuilder.append(line); } matcher = Pattern.compile(regex).matcher(stringBuilder); while (matcher.find()) { iPSet.add(matcher.group(0)); } //System.out.println(stringBuilder); } catch (Exception e1) { e1.printStackTrace(); iPSet = null; } finally { if (bufferedReader != null) { try { bufferedReader.close(); } catch (Exception e2) { e2.printStackTrace(); } } } return iPSet; } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 学习笔记cocos2d-x之项目分析
- Dojo 1.6 官方教程: 创建自定义Dojo小部件(Widget)
- org.xml.sax.SAXParseException: An invalid XML character
- postgreSql 关键字和自定义的字段重名
- .net – XML省略号/其他语法 – 它叫什么?
- Ajax知识体系大梳理
- ruby-on-rails – 使用RubyOnRails上传HTML5 FormData文件
- swift开发中No such module 'Cocoa' 错误
- c# – LINQ:从IEnumerable中选择Distinct / GroupBy并进行
- Cocos2dx3.2 CrazyTetris 单线裁剪 对于判断消除的思考(一