标题: [文本处理] [已解决]批处理怎样一次删除含多个关键词的行? [打印本页]
作者: yue1990 时间: 2011-3-2 12:14 标题: [已解决]批处理怎样一次删除含多个关键词的行?
批处理 删除TXT含有某某关键词的行求一段代码,谢谢。
批量删除a.txt中含有某某关键词的行,多个关键词用,隔开。
比如删除含有“处理,发贴,休闲,关注”的行。
a.txt比较规则,每行一句话或一个词组。但存在一行同时含有两个以上关键词的情况,如:
-------------------------a.txt----------------------------
定单处理
批处理发贴
休闲时间
关注员工
店长制度
员工纪律
......
----------------------------------------------------------
删除含有“处理,发贴,休闲,关注”的行后,得到:
-------------------------b.txt----------------------------
店长制度
员工纪律
......
----------------------------------------------------------{}
[ 本帖最后由 yue1990 于 2011-3-3 13:57 编辑 ]
作者: Commander 时间: 2011-3-2 13:10
- findstr /v "处理 发贴 休闲 关注" a.txt >b.txt
复制代码
作者: CrLf 时间: 2011-3-2 13:43
不考虑特殊字符":- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%a in (1.txt) do (
- set tmp=%%a
- set n=
- for %%b in (处理 发贴 休闲 关注) do set tmp=!tmp:%%b=" "!
- for %%c in ("!tmp!") do set /a n+=1
- if "!n!" leq "2" echo %%a
- )
复制代码
作者: hzcxdgioa 时间: 2013-11-30 08:05
谢谢lz分享。。。。。。。。。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |