示例:
xxx.xxx.xxx.xxx是一种IP地址格式,我想只得到前三个段(带点):xxx.xxx.xxx。
另一个例子:
192.168.0.160,我只想要192.168.0。
答案 0 :(得分:4)
String[] splittedArray = ipAddressString.split("\\.");
String firstThreeSegments = splittedArray [0] + "." + splittedArray [1] + "." + splittedArray [2] + ".";
答案 1 :(得分:4)
String partialIp = ipAddress.substring(0, ipAddress.lastIndexOf(".")+1);
答案 2 :(得分:3)
您可以使用String#replaceFirst
String firstThree = ip.replaceFirst("\\d+$", "");
这将替换任何有效的IP地址的最后一部分,并将其替换为空字符串。
答案 3 :(得分:0)
我想说最简单的方法(IMO)将使用(来自Apache Commons)StringUtils.ordinalIndexOf()
来查找第三个句点的索引值,然后使用substring()
从0获取子字符串到那个指数值。
例如:
StringUtils.ordinalIndexOf("192.168.0.160", ".", 3) == 9
然后您可以使用此索引获取子字符串。