批处理提取关键词第二次出现的行并输出行号。

比如a.txt文本内容aaa11111222222334aaa3455555qw22323我想提取aaa第二次出现的行即aaa3455555,并输出行号3... 比如a.txt文本内容
aaa11111
222222334
aaa3455555
qw22323
我想提取aaa第二次出现的行即aaa3455555,并输出行号3
展开
 我来答
依梦琴瑶
高粉答主

2018-01-25 · 说的都是干货,快来关注
知道顶级答主
回答量:6.9万
采纳率:82%
帮助的人:1.7亿
展开全部
@echo off
cd /d %~dp0
setlocal enabledelayedexpansion

for /f "tokens=1,2 delims=:" %%a in ('findstr /n "^aaa" "a.txt"') do (
    set /a Line+=1
    set L_Num=%%~a
    set Str=%%~b
    if !Line! gtr 1 goto Next
)
exit

:Next
echo 行号:%L_Num%
echo 内容:%Str%
pause

更多追问追答
追问
真是大神啊,很多次都是您耐心帮我解答,我想补充一下做个统计,比如
统计关键词总共出现了几次
第一次出现的行号和内容,第二次出现的行号和内容......可以解决吗?我会提高悬赏的
追答
@echo off
cd /d %~dp0

set Line=0

for /f "tokens=1,2 delims=:" %%a in ('findstr /n "^aaa" "a.txt"') do (
    echo 行号:%%~a
    echo 内容:%%~b
    echo,
    set /a Line+=1
)
echo 总次数:%Line%
pause
exit

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式