將變數用作陣列

通過在 SET 語句中使用空格,可以建立一組可以與陣列類似的變數(儘管它們不是實際的陣列物件):

@echo off
SET var=A "foo bar" 123
for %%a in (%var%) do (
    echo %%a
)
echo Get the variable directly: %var%

結果:

A
"foo bar"
123
Get the variable directly: A "foo bar" 123

也可以使用索引宣告變數,以便檢索特定資訊。這將建立多個變數,具有陣列的錯覺:

@echo off
setlocal enabledelayedexpansion
SET var[0]=A
SET var[1]=foo bar
SET var[2]=123
for %%a in (0,1,2) do (
    echo !var[%%a]!
)
echo Get one of the variables directly: %var[1]%

結果:

A
foo bar
123
Get one of the variables directly: foo bar

請注意,在上面的示例中,你無法在未說明所需索引的情況下引用 var,因為 var 不存在於其自身中。此示例還將 setlocal enabledelayedexpansion!var[%%a]! 上的感嘆號結合使用。你可以在變數替換範圍文件中檢視有關此內容的更多資訊。