当前位置:编程学习 > JAVA >>

ip地址段拆分

有一个字符串的IP组:10.46.40.1--10.46.88.127,将这个ip地址段拆分为一个个ip地址,如
10.46.40.1;10.46.40.2;10.46.40.3。。。一直到10.46.88.125;10.46.88.126;10.46.88.127,


最后将这些单个地址存入一个数组中 
要写一个算法
求大虾们帮帮忙  --------------------编程问答-------------------- 请使用正则循环匹配,每匹配到一个就放入数组中,不用算法的。
String strZZ = '/^(([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.)((d|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))\.){2}([1-9]|([1-9]\d)|(1\d\d)|(2([0-4]\d|5[0-5])))$/';
--------------------编程问答-------------------- public static void main(String[] args) throws Exception{
String[] s= new String[6223];
int k = 0;
for(int i = 40;i <= 88; i++){
for(int j = 1;j <= 127;j++){
s[k] = "10.46." + i + "." + j;
k++;
}
}
for(int i = 0;i < s.length;i++){
System.out.println(s[i]);
}
} --------------------编程问答-------------------- 上面的代码实现每个段最大的只能到127,ip地址段应该是要到255,比如10.46.40.1-10.46.40.255,才开始下一个的10.46.41.1;
截取运行结果如下:(不符合)
10.46.41.124
10.46.41.125
10.46.41.126
10.46.41.127
10.46.42.1
10.46.42.2
--------------------编程问答-------------------- 那就换成j<=255 --------------------编程问答-------------------- 当i=88时再加个判断 --------------------编程问答--------------------
public class zjbds {
public static void main(String[] args){
System.out.println(Arrays.toString("10.46.88.125;10.46.88.126;10.46.88.127".split(";")));

}
}
--------------------编程问答--------------------
public class zjbds {
public static void main(String[] args){
System.out.println(Arrays.toString("10.46.88.125;10.46.88.126;10.46.88.127".split(";")));

}
}
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,