中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-13 14:25
47,812 主题排行 / 349,916 发帖 / 今日 0 篇 / 48,268 会员排行
DOS批处理 & 脚本技术(批处理室) » [已结]对ip段的整合,涉及超多次比较!
可打印版本  3,276 / 40
第16楼 cz1314 发表于 2009-01-11 15:49
初级用户 发帖 43 积分 64
一个贴只能发一个附件!继续发下部分。
3.0.0.0 4.17.135.31
4.17.135.64 4.17.142.255

这2段ip 也是连续的。



再说直接点,
先比较每行的 A1.B1.C1.D1 进行比较。如果不连续 再将 A2.B2.C2.D2 与下一行的 A1.B1.C1.D1 比较是否连续。

[ Last edited by cz1314 on 2009-1-11 at 16:01 ]

附件
test.part02.rar (30.57 KiB)
第17楼 exzzz 发表于 2009-01-11 16:10
初级用户 发帖 167 积分 194
你上一贴的附件不完全,解压不了。

我觉得你设置的规则有些问题,例如你给的结果取样整合如下:
2.6.190.56 2.6.190.63
3.0.0.0 4.24.144.255

那么
2.6.190.0 到 2.6.190.55 是没有的,你没有整合,
2.6.190.64 到 2.6.190.255 是没有的,你没有整合,
4.23.128.184 到 4.23.128.193是没有的,为何要整合?如果是因为该段出现过IP,就整合表示该段A.B.0.0到该段的A.B.255.255都有,那就跟你上两条的规则矛盾了哦?

我觉得我的统计方法是严密的,统计所有连续段并输出。
第18楼 exzzz 发表于 2009-01-11 16:11
初级用户 发帖 167 积分 194
晕倒,原来你要的统计精度是 ABC,我第一写的是统计到A.B,第二次写的是A.B.C.D。。。。汗一个
第19楼 cz1314 发表于 2009-01-11 16:15
初级用户 发帖 43 积分 64
Originally posted by exzzz at 2009-1-11 04:10 PM:
你上一贴的附件不完全,解压不了。

我觉得你设置的规则有些问题,例如你给的结果取样整合如下:
2.6.190.56 2.6.190.63
3.0.0.0 4.24.144.255

那么
2 ...


应外一部分在你楼上的帖子里, 附件大了 只有分成2部分。

15楼,16楼一楼一个附件,2个放一起就可以解压了

我发现 理解有误差, 我重新解释下 待整理文本的含义:
---------------------
3.17.233.0 3.17.233.255 UNITED STATES
3.17.234.0 3.18.63.255 UNITED STATES
3.18.64.0 3.18.64.255 UNITED STATES
3.18.65.0 3.18.95.255 UNITED STATES
3.18.96.0 3.18.96.255 UNITED STATES
-----------------------
既,
从 3.17.233.0 到 3.17.233.255 属于美国ip段
从 3.17.234.0 到 3.18.63.255 属于美国
从 3.18.64.0 到 3.18.64.255 属于美国
从 3.18.65.0 到 3.18.95.255 属于美国
从 3.18.96.0 到 3.18.96.255 属于美国


每行的前部分与后部分是不用进行比较的,再举一个例子
现在有20个球,分别用0.1 - 2.0 的数字来表示。
---------文本-------------
0.1 0.4 黑色 (0.1号到0.4号球是黑色)
0.4 1.1 黑色
1.2 1.3 黑色
1.7 1.8 黑色
---------文本-------
这样上面文本可以整合。
0.1 1.3 黑色
1.7 1.8 黑色




这样解释不知道能不能有作用

[ Last edited by cz1314 on 2009-1-11 at 16:30 ]
第20楼 exzzz 发表于 2009-01-11 16:16
初级用户 发帖 167 积分 194
你把我第二次发的稍微修改一下,删除几个变量就可以用了。。。
我第一次写的那个,算法有误,不要使用了。
第21楼 exzzz 发表于 2009-01-11 16:26
初级用户 发帖 167 积分 194
2.6.190.56 2.6.190.63
3.0.0.0 4.18.65.255
4.18.67.0 4.24.144.255
4.24.146.0 4.25.164.255
4.25.166.0 4.37.0.255
4.37.2.0 4.48.215.255
4.48.217.0 4.48.218.255
4.48.222.0 4.48.222.255
4.48.230.0 4.78.21.255
4.78.24.0 4.78.55.255
4.78.58.0 4.255.255.255
6.0.0.0 9.4.13.255
9.4.15.0 9.4.28.255
9.4.30.0 9.4.76.255
9.4.78.0 9.4.93.255
9.4.95.0 9.255.255.255


这个是我修改脚本后,只统计ABC精度的结果,你看看是不是你要的?
第22楼 exzzz 发表于 2009-01-11 16:28
初级用户 发帖 167 积分 194
只统计A.B.C精度

第23楼 cz1314 发表于 2009-01-11 16:32
初级用户 发帖 43 积分 64
Originally posted by exzzz at 2009-1-11 04:26 PM:
2.6.190.56 2.6.190.63
3.0.0.0 4.18.65.255
4.18.67.0 4.24.144.255
4.24.146.0 4.25.164.255
4.25.166.0 4.37.0.255
4.37.2.0 4.48.215.255
4.48.217.0 4.48.218.255
4.48.222.0 4.48.222.255
...

这个结果没有整合完。

3.0.0.0 4.18.65.255
4.18.67.0 4.24.144.255

是连续的啊。 4.18.65.255 的下一个ip 数字就是 4.18.67.0

结果中 B 段部分都是可以再整合的


麻烦老师再看下 19楼。
并不是精度的问题,而是比较的问题。

ip1 - ip2 美国
ip3 - ip4 美国
ip5 - ip6 美国
ip7 - ip8 美国

我的思路先比较 ip1 ip3 是否连续 如果连续则 1、2行可以整合成
ip1 - ip4 美国
如果ip1 ip3 不是连续的,再比较 ip2 和ip3 ,如果ip2 ip3 是连续的,那么1、2也可以整合成 ip1 - ip4.如果这2个比较都不连续,则输出 ip1 -ip2 ,再进行下一轮比较,既比较ip3 和 ip5,如果连续则整合,不连续再比较 ip4 ip5是否连续,依次比较。。。

[ Last edited by cz1314 on 2009-1-11 at 16:39 ]
第24楼 cz1314 发表于 2009-01-11 16:42
初级用户 发帖 43 积分 64
不知道这样解释 能让您明白我的意思没?
第25楼 exzzz 发表于 2009-01-11 16:47
初级用户 发帖 167 积分 194
这个结果没有整合完。

3.0.0.0 4.18.65.255
4.18.67.0 4.24.144.255

是连续的啊。 4.18.65.255 的下一个ip 数字就是 4.18.67.0

结果中 B 段部分都是可以再整合的



4.18.65.255 的下一个ip 4.18.66.0 而不是 4.18.67.0 ,所以我截止到4.18.65.255输出了,没有错啊???


ip1 - ip2 美国
ip3 - ip4 美国
ip5 - ip6 美国
ip7 - ip8 美国

我的思路先比较 ip1 ip3 是否连续 如果连续则 1、2行可以整合成
ip1 - ip4 美国
如果ip1 ip3 不是连续的,再比较 ip2 和ip3 ,如果ip2 ip3 是连续的,那么1、2也可以整合成 ip1 - ip4.如果这2个比较都不连续,则输出 ip1 -ip2 ,再进行下一轮比较,既比较ip3 和 ip5,如果连续则整合,不连续再比较 ip4 ip5是否连续,依次比较。。。


IP1的后面有IP2,IP2至少比IP1大1,IP3至少比IP2大1,那IP3怎么可能等于IP1+1?所以不存在IP1跟IP3连续的可能,只存在IP2跟IP3连续的可能

[ Last edited by exzzz on 2009-1-11 at 16:52 ]
第26楼 cz1314 发表于 2009-01-11 16:52
初级用户 发帖 43 积分 64
不好意思我看走眼了。。。。非常抱歉。
第27楼 exzzz 发表于 2009-01-11 16:53
初级用户 发帖 167 积分 194
我晕……


没事我做月报去了,拜拜。

[ Last edited by exzzz on 2009-1-11 at 16:54 ]
第28楼 cz1314 发表于 2009-01-11 16:55
初级用户 发帖 43 积分 64
刚才是我看错了,很不好意思
能再提个要求么。 就是:
在 AB 相同的情况下 C 段比较后相差小于100 的都当连续的整合,

如果不方便就去掉c段的精度。只要 AB 精度。

[ Last edited by cz1314 on 2009-1-11 at 16:58 ]
第29楼 exzzz 发表于 2009-01-11 16:59
初级用户 发帖 167 积分 194
Originally posted by cz1314 at 2009-1-11 04:55 PM:
刚才是我看错了,很不好意思
能再提个要求么。 就是:
在 AB 相同的情况下 C 段比较后相差小于100 的都当连续的整合,



兄弟,自己研究一下吧,可以实现的。。。。。。
BTW,HAT版主肯定很不爽了,哈哈,他最不喜欢别人直接等脚本的,他喜欢启发新人自行处理问题。
我都提供那么多脚本了,你再修改修改就能实现了。

授人鱼不如授人以渔!
第30楼 cz1314 发表于 2009-01-11 17:07
初级用户 发帖 43 积分 64
Originally posted by exzzz at 2009-1-11 04:59 PM:



兄弟,自己研究一下吧,可以实现的。。。。。。
BTW,HAT版主肯定很不爽了,哈哈,他最不喜欢别人直接等脚本的,他喜欢启发新人自行处理问 ...



非常非常感谢,剩下的问题我自己解决。



88211412 是我的q ,程序方面我不是很懂,如果在网络方面您碰到什么困难如果有我能帮的上的,您可以m我。
上一页  1 2 3  下一页
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023