【发布时间】:2020-11-11 05:28:13
【问题描述】:
所以我只是想知道是否可以让批处理文件读取一行文本,但将每个字母拆分成它自己的变量,例如:
@echo off
:start
set /p text=input:
set out=
set out2=
set /p text=input:
:loop
set out=%out% %text:~0,1%
set out2=%out2:~1% %text:~1%
set text=%text:~1%
if defined text goto loop
echo %out% -%out2%
pause
goto start
我在这里写的东西不起作用(我只是在摆弄试图找到答案) 但我试图做的是将“out”和“out2”变成 2 个单独的值。其中“out”是输入的第一个字母,“out2”是第二个字母,依此类推。 (计划有大约 16 个输出可以读取用户输入的任何内容的前 16 个字母并将其转换为单独的变量)
例如:在同一行中输入“ab”将导致“out”为“a”而“out2”为 b
我也想不通的另一件事是如何阻止“退出”阅读第一个字母之后的所有内容。如果有人可以帮助我解决此问题,请说明您为解决该问题所做的工作。提前致谢
【问题讨论】:
-
关于您的最后一段:
set "out=%text:~0,1%"从输入文本中提取第一个字符(位置索引0,以及1字符的长度)...
标签: windows batch-file variables cmd