判断IP是否内网,看了网上很多是用截断字符床,转数字判断,这些都是坑,慢慢慢,一切从速度优化看,用正则......
不多说,代码如下
import java.util.regex.Matcher;import java.util.regex.Pattern;public static boolean innerIP(String ip) { Pattern reg = Pattern.compile("^(127\\.0\\.0\\.1)|(localhost)|(10\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})|(172\\.((1[6-9])|(2\\d)|(3[01]))\\.\\d{1,3}\\.\\d{1,3})|(192\\.168\\.\\d{1,3}\\.\\d{1,3})$"); Matcher match = reg.matcher(ip); return match.find();
---------------------