如何用批处理提取一目录下所有文本文件中的特定字符并同文件名一起输出?

现有一批txt文件,文件名无规律,随便打开一个a.txt,看到某段中间写着name="KEYWORDS"content="APPLE,SHOP,ENG,"前后都有其他各种... 现有一批txt文件,文件名无规律,随便打开一个a.txt,看到某段中间写着name="KEYWORDS" content="APPLE,SHOP,ENG," 前后都有其他各种内容,我需要通过批处理提取出APPLE、SHOP和ENG以及文件名输出至另一文件1.txt中,如此往复,最后1.txt记录下a.txt的关键词为APPLE,SHOP,ENG,b.txt的关键词为…… 展开
 我来答
fencerking
2011-05-03 · TA获得超过740个赞
知道小有建树答主
回答量:507
采纳率:0%
帮助的人:189万
展开全部
需要文件内容结构
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
JooKin
2011-05-03 · TA获得超过687个赞
知道小有建树答主
回答量:304
采纳率:0%
帮助的人:381万
展开全部
@echo off&setlocal enabledelayedexpansion
(
for /f "" %%i in ('dir /b /a-d *.txt') do (
(
set "fn=%%i"
for /f "tokens=3 delims==" %%m in ('findstr /i /c:"APPLE,SHOP,ENG," "!fn!"') do (
set /p=%%~m<nul
)
set /p=……!fn!<nul
echo\
)>>$
)
) 2>nul
move /y $ 1.txt >nul
echo sucessfully!&echo=&pause>nul

放在txt文本同一目录下运行即可。。

PS:文件名不能含有空格或tab制表符! 并且要提取的行有且只有name="KEYWORDS" content="APPLE,SHOP,ENG,"
追问
N多txt文件 每个文件的关键词是不一样的 内容和数量也不定,只知道它们是在name="KEYWORDS" content=之后
追答
是否文本中只有一行name="KEYWORDS" content=或者一行中只有一个name="KEYWORDS" content=??是否关键词在content=后面的双引号里面??是否关键词包含特殊字符如?|||&等??你说不出一两条规律来很难帮不上你。。。。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式