做一个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) 展开
提取节日快乐到)之间的数据保存到b.txt中,一行一个
如:
何必如此(rlkaalk99) 展开
1个回答
展开全部
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
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
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询