标题: [文本处理] 批处理如何将同网段的连续的ip地址进行合并 [打印本页]
作者: yx74110 时间: 2013-3-25 21:55 标题: 批处理如何将同网段的连续的ip地址进行合并
由于站点需要判断地区调转,而且要比较精准。
我把IP数据库分了几份,但是数据太大,手动整理效率太低。
求大神帮忙。给批了。
例子
111.222.1.1 111.222.233.1
111.222.233.2 111.223.1.1
111.223.1.2 111.224.220.5
122.122.122.1 122.123.123.123
123.3.3.3 123.4.4.4
123.4.4.5 123.4.4.6
123.4.4.7 123.11.12.13
运行结果
111.222.1.1 111.224.220.5
122.122.122.1 122.123.123.123
123.3.3.3 123.11.12.13
每段IP中间是TAB
求大神帮忙。。
我是想把多段连接的IP段简化成一段。前提是中间不间断。
大家知道IP是255进制的,我把一个小样板传上来了,里面有样板以及结果。。谢谢大家。
作者: qwe13518 时间: 2013-3-26 08:50
加KK63420978 讨论
作者: yx74110 时间: 2013-3-26 09:57
回复 2# qwe13518
在哪里???????????
作者: BAT-VBS 时间: 2013-3-26 11:51
1、请用文字描述一下规律,不要让别人去猜。
2、请选取一段真实文本,压缩之后传上来,以便测试。
作者: yx74110 时间: 2013-3-26 13:49
回复 4# BAT-VBS
样板已到
作者: yx74110 时间: 2013-3-26 15:39
回复 4# BAT-VBS
大湿,,可以搞定吗??
作者: yx74110 时间: 2013-3-27 09:22
没人能解决吗??
作者: cjiabing 时间: 2013-3-27 12:40
我估计没人看得懂你想干嘛!~
最起码的,你要告诉大家你的结果是怎么从样本产生的?
作者: CrLf 时间: 2013-3-27 16:49
不考虑最后一位为0的退位计算:- @echo off&setlocal enabledelayedexpansion
- >b.txt (
- for /f "tokens=1,2" %%a in (a.txt) do (
- set "d1=%%~na"&set "d2=%%~nb"
- set "p1=%%~xa"&set "p2=%%~xb"
- set /a "n1=!p1:.=!-1,n2=!p2:.=!-1"
-
- :test
- if !d1!.!n1! neq !end! (
- if defined start echo;!start! !end!
- set start=%%a
- )
-
- set end=!d2!!p2!
- ))
- if defined d1 (
- set "d1="
- call :test>>b.txt 2>nul
- ) else exit/b
- pause
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |