作业帮 > 综合 > 作业

批处理SET choice=%choice:0,1% 其中 “:0,1”表示什么,两个百分号表示变量这个我知道.好的话可

来源:学生作业帮 编辑:拍题作业网作业帮 分类:综合作业 时间:2024/05/01 08:03:05
批处理SET choice=%choice:0,1% 其中 “:0,1”表示什么,两个百分号表示变量这个我知道.好的话可以加分
:cho set choice=
set /p choice= 请选择:
IF NOT "%choice%"=="" SET choice=%choice:0,1%
if /i "%choice%"=="1"
goto ip if /i "%choice%"=="2" goto setsave
if /i "%choice%"=="3" goto kaiji
if /i "%choice%"=="4" goto clean
if /i "%choice%"=="Q" goto endd
echo 选择无效,请重新输入
echo.
这是对变量的截取,SET choice=%choice:~0,1%表示截取原变量最前面的1个字符作为新变量
另外比如 SET choice=%choice:~2,5% 则表示 截取从第2个字符后面的5个字符
你可以在cmd窗口里输入set /?查看系统的帮助.
你给的代码里,是当从键盘输入多个字符,比如按的是2345的话,它就只算第一个输入的字符,也就是只当2处理.
再问: 嗯,有点明白了,如果设变量word为“abcdefghij”,变量num为“123456789” %word:~4,1%为e,其中的4我想换成num中随机的一个数字怎么弄,网上说还要用命令嵌套,怎么写啊。谢谢。
再答: @echo off&setlocal EnableDelayedExpansion set word=abcdefghij set/a num=%random%%%10 echo !word:~%num%,1! pause