Batch file 在批处理脚本中将句子数组转换为单词
我有一个句子,单词之间用下划线隔开Batch file 在批处理脚本中将句子数组转换为单词,batch-file,Batch File,我有一个句子,单词之间用下划线隔开 sentence = matt_george_phil 我想把这句话中提到的名字转换成一个数组,即 arr[0] = matt arr[1] = george arr[2] = phil 我不熟悉批处理脚本。有人能告诉我怎么做吗。谢谢 我试过类似的东西 setlocal enableextensions enabledelayedexpansion echo run set sentence=a~b~c set /a i=0 for /f "toke
sentence = matt_george_phil
我想把这句话中提到的名字转换成一个数组,即
arr[0] = matt
arr[1] = george
arr[2] = phil
我不熟悉批处理脚本。有人能告诉我怎么做吗。谢谢
我试过类似的东西
setlocal enableextensions enabledelayedexpansion
echo run
set sentence=a~b~c
set /a i=0
for /f "tokens=1,2,3 delims=~" %%a in ("%sentence%") do (
set /a i+=1
set array[!i!]=%%a
)
echo %array[1]%
echo %array[2]%
但是这种逻辑似乎存在一些问题。BAT语言没有数组的概念。但是,您可以使用各种技术来模拟它 其中一种技术是利用调用命令中传递的参数的自动解析 阅读“帮助集”和“帮助呼叫”,然后尝试此
SET sentence=matt_george_phil
SET sentence=%sentence:_=%
CALL :asarray %sentence%
goto :eof
:asarray
echo first element = %1
echo second element = %2
echo third element = %3
我已经添加了我刚刚尝试的代码。你能帮我调试一下吗。