怎样写一句for语句的批处理,用来把一个字符串分割成一个一个的子字符串 10

有一个字符串是这样的,中间有一个一个-d做分隔符,没有空格,如:-dxsafs-dpouiun-dhjihji-dpoiyu89n我需要得到-d之间的每一个字符串,即我需... 有一个字符串是这样的,中间有一个一个-d做分隔符,没有空格,如:
-dxsafs-dpouiun-dhjihji-dpoiyu89n
我需要得到-d之间的每一个字符串,即我需要导出来这样的子字符串
xsafs
pouiun
hjihji
poiyu89n
这样的for语句怎么写啊?
展开
 我来答
jd08139
2013-11-14 · TA获得超过3733个赞
知道大有可为答主
回答量:2174
采纳率:66%
帮助的人:2837万
展开全部
@echo off
set "str=-dxsafs-dpouiun-dhjihji-dpoiyu89n"
set str1=%str:-d=,%
for %%i in (%str1%) do 指数则唯棚(echo %%i)
pause

 也可替换为空格毕戚

set str1=%str:-d= %
更多追问追答
追问
恩,有灵感了,最后那句输出%%i 怎么换行呢?要用换行符吗?不想在一行输出来
追答
不用换行符直接输出就可以了.
例如
echo %%i>>1.txt
陈哥深惠通勤
2013-11-15 · TA获得超过1176个赞
知道小有建树答主
回答量:1909
采纳率:33%
帮助的人:831万
展开全部
for /陪行f "tokens=1,2,3,4 delims=-"芦差哗 %%i in ("-dxsafs-dpouiun-dhjihji-dpoiyu89n") do (

echo %%i
echo %%j
echo %%k
echo %%l)
tokens=1,2,3,4表示选取分割后的庆激第1,2,3,4段内容
delims=- 表示以“-”为分割符来分割字符串
追问
这也太笨了啊,又不是只有这四个啊
追答

单独的命令都是处理预定规律、预定结构的字符,要处理不同情况就要组合命令

@echo off
set "words=-dxsafs-dpouiun-dhjihji-dpoiyu89n-d13jsuu-d63"
set twords=%words:-d= %
:loop
for /f "tokens=1,*" %%i in ("%twords%") do (
echo %%i
set twords=%%j)
if defined twords goto loop
pause
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友21c33d3
2013-11-14 · TA获得超过308个赞
知道答主
回答量:254
采纳率:0%
帮助的人:112万
展开全部
用split函数试试
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式