标题: [文本处理] [已解决]批处理命令findstr如何提取含2个-的行? [打印本页]
作者: lantern 时间: 2014-11-4 12:17 标题: [已解决]批处理命令findstr如何提取含2个-的行?
本帖最后由 lantern 于 2014-11-4 18:58 编辑
1.179.248-255.0-255
8.6.48-55.0-255
8.8.4.0-255
8.8.8.0-255
8.15.202.0-255
8.22.56.0-255
8.34.208-223.0-255
8.35.192-207.0-255
12.216.80.0-255
......
最好含一个-的行输出到一个文件,含两个-的行输出到一个文件,谢谢
作者: apang 时间: 2014-11-4 12:40
- @echo off
- set "re=[^-]*\-[^-]*"
- findstr /be "%re%" a.txt > 1.txt
- findstr /be "%re%%re%" a.txt > 2.txt
- pause
复制代码
作者: 小文 时间: 2014-12-22 13:37
回复 2# apang
功能简述:以a文本中的行的内容去匹配b文本的行的内容,把匹配到的行追加为c文本。
功能详述:
1.设a文本里有多行文本,b文本里有更多的多行文本;
2.我们用逐行用a文本里的行的内容去匹配b文本里的内容;
3.如果b文本里有匹配a文本里行的内容,则输出b文本中所在内容的行到c文本中,否则继续用a文本的下一行去匹配b文本的内容。
结果演示:
a文本:
47一行一6行第7一行第*&
第二行b文本栋
384756 一五一一一
b文本:
4y6第47一行一6行第7一行第*&……&*一行第一行638456
第二行b文本栋**牤擤固顶地yrt65547
398467b文本第三行*(&……*&第三行
第丁下盯有婆罗门稼的836450 四第行
有e6y58o567看中一384756 一五一一一
c文本:
4y6第47一行一6行第7一行第*&……&*一行第一行638456
第二行b文本栋**牤擤固顶地yrt65547
有e6y58o567看中一384756 一五一一一
为什么在这样的文本中没有用呢?对其使用命令:findstr /l /g:a.txt b.txt > c.txt
a.txt:
在计算机内部,
在计算机中,既可
b.txt:
在计算机内部,一切数据均以()形式存储选择B二进制
在计算机中,既可作为输入设备又可作为输出设备的是()选择B磁盘驱动器
c.txt:
(什么出输出不了)
作者: terse 时间: 2014-12-22 22:59
回复 3# 小文
这样试下- findstr /ig:a.txt b.txt>c.txt
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |