A1:假设令 set str=I love,bbs;bathome.net,请分别显示出I、love、bbs、bathome和cn这五个字符串。目的:了解for语句用到了哪些符号作为元素的分隔符。
for /f "delims= ,;." %i in ('call %%str%%') do @echo %i
A2:条件同A1,要求最后只显示cn这个字符串。目的:了解for语句的执行流程。
for /f "delims= ,;. tokens=*" %i in ('call %%str%%') do @echo %i
@echo off&setlocal enabledelayedexpansion
set str=I love,bbs;bathome.net
for %%x in (%str%) do (set z=%%x&&set a=!z:.= !&&for %%b in (!a!) do echo %%b)
pause>nul
输出:
I
love
bbs
bathome
net
不知,楼主是否题目有问题,那来的cn,如是要有cn ,只能加个IF语句了
code
(
@echo off&setlocal enabledelayedexpansion
set str=I love,bbs;bathome.net
set k=0
for %%x in (%str%) do (set z=%%x&&set a=!z:.= !&&for %%b in (!a!) do (set /a k+=1&&if !k! equ 5 echo %%b))
pause>nul
)
输出:
net
如题要输出cn,只要把上面代码"echo %%b"改成"echo cn"