使用 Windows CMD Batch 顺便说一句。不管怎样,我有一个 48 位长的字符串保存到一个变量中,我想取出该变量的每 4 位数字并将其保存到新变量中,以便可以回显它。
我希望能够增加该值,并将每 4 位数字存储到新的变量中,例如 var1=0000。
此外,字符串只是数字。
easy:使用
for /L
循环和 set
提取子字符串的能力。为变量名称添加一个计数器,然后就完成了:
@echo off
setlocal enabledelayedexpansion
REM create a random 48-digit string:
set "string="
for /l %%a in (1,1,48) do <nul set "string=!string!!random:~-1!"
echo 48-digit string: %string%
REM dissect into groups of four and assign to variables:
set count=0
for /l %%a in (0,4,45) do (
set /a count+=1
set "var_!count!=!string:~%%a,4!
)
set var
输出示例:
48-digit string: 561545587231541933791169318876024486505200864568
var_1=5615
var_10=5052
var_11=0086
var_12=4568
var_2=4558
var_3=7231
var_4=5419
var_5=3379
var_6=1169
var_7=3188
var_8=7602
var_9=4486