批处理如何提取TXT文本里指定行内容?
包含有指定关键词的行全部提取输出到另外一个文本里如何用批处理提取文本内指定行内容?例如:txt文本内容如下:同学:a住址:b北京四环路25号同学:cc住址:dd上海新区同...
包含有指定关键词的行全部提取输出到另外一个文本里
如何用批处理提取文本内指定行内容?
例如:
txt文本内容如下:
同学:a
住址:b
北京四环路25号
同学:cc
住址:dd
上海新区
同学 mm
住址 ee
四川朋友
fff=yyyy
pppp=uuuuu
将以上文本里的相邻行同学和住址后面的内容提取出来合并为一行并用=隔开,然后输出到另外一个文本里。
例如:
a=b
cc=dd
mm=ee
fff=yyyy
pppp=uuuuu 展开
如何用批处理提取文本内指定行内容?
例如:
txt文本内容如下:
同学:a
住址:b
北京四环路25号
同学:cc
住址:dd
上海新区
同学 mm
住址 ee
四川朋友
fff=yyyy
pppp=uuuuu
将以上文本里的相邻行同学和住址后面的内容提取出来合并为一行并用=隔开,然后输出到另外一个文本里。
例如:
a=b
cc=dd
mm=ee
fff=yyyy
pppp=uuuuu 展开
2个回答
展开全部
只要一个命令就行了,a.txt为要找的文本,如果要找的关键词中含空格要整体找如下命令就行:
findstr /c:"你的关键词" a.txt>b.txt
如要找分别的几个关键词,把/c:去掉
如果要找的有字母需要完全对应大小写如果希望忽略大小写,要在上面基础上再加/i 如:
findstr /i /c:"你的关键词" a.txt>b.txt
补充:你这叫胡扯,什么叫“相邻行同学和住址后面的内容提取出来”,有的有冒号有的没,还有的“fff=yyyy pppp=uuuuu”既没同学也没住址,就像问着好玩,枉我还象傻瓜一样费神帮你答那一通。
findstr /c:"你的关键词" a.txt>b.txt
如要找分别的几个关键词,把/c:去掉
如果要找的有字母需要完全对应大小写如果希望忽略大小写,要在上面基础上再加/i 如:
findstr /i /c:"你的关键词" a.txt>b.txt
补充:你这叫胡扯,什么叫“相邻行同学和住址后面的内容提取出来”,有的有冒号有的没,还有的“fff=yyyy pppp=uuuuu”既没同学也没住址,就像问着好玩,枉我还象傻瓜一样费神帮你答那一通。
展开全部
:: By LJ_SunTB 【BAT-GO】
@echo off>temp.txt
setlocal enabledelayedexpansion
set file=test.txt
for /f "tokens=*" %%a in ('type "!file!"') do (
echo.%%a|findstr "=">nul
if !errorlevel! equ 0 (echo>>temp.txt %%a) else (
set str=%%a
if "!str:~0,2!"=="同学" (set n=1&set name=!str:~3!)
if "!str:~0,2!"=="住址" (set n=2&set address=!str:~3!)
)
if !n! equ 2 (set n=0&echo>>temp.txt !name!=!address!)
)
start temp.txt
@echo off>temp.txt
setlocal enabledelayedexpansion
set file=test.txt
for /f "tokens=*" %%a in ('type "!file!"') do (
echo.%%a|findstr "=">nul
if !errorlevel! equ 0 (echo>>temp.txt %%a) else (
set str=%%a
if "!str:~0,2!"=="同学" (set n=1&set name=!str:~3!)
if "!str:~0,2!"=="住址" (set n=2&set address=!str:~3!)
)
if !n! equ 2 (set n=0&echo>>temp.txt !name!=!address!)
)
start temp.txt
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询