批处理 提取 字符串中 指定分隔符之间的字符
TXT中有一段字符串,如:398ssdf?aaa&fwewoi?bbb&fddsfsdf?ccc&dfsdf问题:(1)要提取所有以?开始,&结尾的字符串,怎么写批处理提...
TXT中有一段字符串, 如: 398ssdf?aaa&fwewoi?bbb&fddsfsdf?ccc&dfsdf
问题:
(1)要提取所有以?开始,&结尾的字符串,怎么写批处理提取?(结果是?aaa& ?bbb& ?ccc&
(2)如果要以?和&为分隔符,讲该字符串分割成多行,怎么写批处理分割? (结果是
398ssdf
aaa
fwewoi
bbb
fddsfsdf
ccc
dfsdf
谢谢!
这字符串中,有些地方还带 双引号 3“98ssdf?aaa&fw”ewoi?bbb&fddsfsdf?ccc&dfsdf 展开
问题:
(1)要提取所有以?开始,&结尾的字符串,怎么写批处理提取?(结果是?aaa& ?bbb& ?ccc&
(2)如果要以?和&为分隔符,讲该字符串分割成多行,怎么写批处理分割? (结果是
398ssdf
aaa
fwewoi
bbb
fddsfsdf
ccc
dfsdf
谢谢!
这字符串中,有些地方还带 双引号 3“98ssdf?aaa&fw”ewoi?bbb&fddsfsdf?ccc&dfsdf 展开
1个回答
展开全部
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('dir /b *.txt') do (
for /f "delims=" %%a in ('type "%%i"') do (
set "str=%%a?"
set "str=!str:“=!"
set "str=!str:”=!"
set "str=!str:&=?!"
set s=
for /l %%b in (0 1 100) do (
if "!str:~%%b,1!" == "?" (
echo,!s! & set s=
) else (
set "s=!s!!str:~%%b,1!"
))))>"new_%%i"
)
pause
互助互利,请及时点击【采纳回答】
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询