批处理删除文本中多个字符串所在的行?
处理的文本如下:11322124221132214242131221242213122142421332212422133221424231122124223112214...
处理的文本如下:
1132212422
1132214242
1312212422
1312214242
1332212422
1332214242
3112212422
3112214242
3132212422
3132214242
3312212422
3312214242
2213212412
2213214232
2231212412
2231214232
2123212412
将以上含有“4242”“3322”“1212”“1122”多个字符串/关键字整行删除,不留空行,并生成新文本,其它行留下,求各位大虾帮个忙! 展开
1132212422
1132214242
1312212422
1312214242
1332212422
1332214242
3112212422
3112214242
3132212422
3132214242
3312212422
3312214242
2213212412
2213214232
2231212412
2231214232
2123212412
将以上含有“4242”“3322”“1212”“1122”多个字符串/关键字整行删除,不留空行,并生成新文本,其它行留下,求各位大虾帮个忙! 展开
2个回答
展开全部
不清楚你的实际文件,仅以问题中的样例/说明为据
复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起运行
复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起运行
/*&cls
@echo off
rem 删除一个txt文本文件里含有指定字符串/关键词的行
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
cd /d "%~dp0"
set "txtfile=xxx.txt"
type "%txtfile%"|cscript -nologo -e:jscript "%~f0">"t.t"
move /y "t.t" "%txtfile%"
:end
echo;%#% +%$%%$%/%@% %z%
pause
exit
*/
var keywords=['4242','3322','1212','1122'];
while(!WSH.StdIn.AtEndOfStream){
var line=WSH.StdIn.ReadLine(),f=true;
for(var i=0;i<keywords.length;i++){
if(line.indexOf(keywords[i])>-1){f=false;break;}
}
if(f){WSH.echo(line);}
}
更多追问追答
追问
运行程序后,提示“系统找不到指定的文件”。程序已经与处理文本放在同一文件夹里。
追答
按运行后窗口中的提示联系我
来自:求助得到的回答
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
@echo offset #=q&set/azx=0x53b7e0b4title Any question +%#%%#% %zx%cd /d "%~dp0"type "a.txt"|find /v "0 0 0 0 0 0 0 0 0%%">"b.txt"echo;Any question +%#%%#% %zx%pause
追问
同时删除多个关键字呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询