批处理提取文本中指定字符中间的内容

比如
2.33.1.5-->6.2.9.62fdd (g:9) goo:fdsfdsf (g:2)
2.11.1.5-->6.2.9.62fdd (g:1) goo:dfdsffdsf (g:8)
2.345.1.5-->6.2.9.62fdd (g:3) goo:d6fdsfds (g:3)
2.3.43.5-->6.2.9.62fdd (g:4) goo:fdsfds (g:9)
2.3.1.3-->6.2.9.62fdd (g:7) goo:%^$#RDF (g:3)
2.3.1.2-->6.2.9.62fdd (g:0) goo:#$REFDSFD (g:1)
2.3.76.5-->6.2.9.62fdd (g:9) goo:fsdfdsefd (g:3)

我要goo:后面的
fdsfdsf
dfdsffdsf
d6fdsfds
fdsfds
%^$#RDF
#$REFDSFD
fsdfdsefd

@echo off
for /f "tokens=1-5* delims=:()" %%a in (test.txt) do (
if /i "%%d"=="goo" (
set /p "s=%%~e" < nul
echo.
)

pause

从文本文件test.txt中输出上述内容

追问

不行呀
可以保留到另外个文本不

追答@echo off
(for /f "tokens=1-5* delims=:()" %%a in (test.txt) do (
if /i "%%d"=="goo" (
set /p "s=%%~e" < nul
echo.
)
)) > result.txt 
pause

将输出保存到文件result.txt

追问

测试 result.txt文本是空的
哥们你写完后测试过没

追答@echo off 
(for /f "tokens=1-5* delims=:() " %%a in (test.txt) do (
if /i "%%d"=="goo" (
set /p "s=%%~e" < nul
echo.
)
)) >result.txt 
pause

已用你给出的文本测试过了

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答