做一个bat文件提取下面a.txt文本文件中符合要求的数据保存到b.txt中

wr我你节日快乐何必如此(rlkaalk99)wr我爱节日快乐rolorodwr(rolorodwr)d0爱你节日快乐a(wokl04adr)wk我你节日快乐网事如烟(o... wr 我你 节日快乐何必如此(rlkaalk99) wr 我爱 节日快乐 rolorodwr(rolorodwr) d0 爱你 节日快乐 a(wokl04adr) wk 我你 节日快乐 网事如烟(owdkll9ro) wr 我你 节日快乐 一路向前(o9wwr9wl) wd 爱你 节日快乐

提取节日快乐到)之间的数据保存到b.txt中,一行一个
如:
何必如此(rlkaalk99)
展开
 我来答
sudoku52
2012-05-10 · TA获得超过7万个赞
知道大有可为答主
回答量:1.2万
采纳率:82%
帮助的人:4879万
展开全部
wr 我你 节日快乐何必如此(rlkaalk99)
wr 我爱 节日快乐 rolorodwr(rolorodwr)
d0 爱你 节日快乐 a(wokl04adr)
wk 我你 节日快乐 网事如烟(owdkll9ro)
wr 我你 节日快乐 一路向前(o9wwr9wl)
wd 爱你 节日快乐

你的样本没换行,看不清楚格式,如果是上面这样的格式,你先试试这个吧

@echo off
setlocal enabledelayedexpansion
(for /f "tokens=*" %%i in (a.txt) do (
set s=%%i
set s=!s:节日快乐=,!
for /f "tokens=2 delims=,)" %%j in ('echo !s!') do echo %%j^)))>b.txt
更多追问追答
追问
试了一下,原数据必须换行才能正确提取,但是我的原数据是不换行的,就是很长的一段
追答
如果是很长的一段的话(大概几千个英文字符),批处理就处理不了了。
我习惯于用一个第三方工具wfr.exe来换行再用批处理处理
@echo off
setlocal enabledelayedexpansion
wfr a.txt -r:")" -t:")\n"
(for /f "tokens=*" %%i in (a.txt) do (
set s=%%i
set s=!s:节日快乐=,!
for /f "tokens=2 delims=,)" %%j in ('echo !s!') do echo %%j^)))>b.txt
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式