DOS 批处理 将一个以空格为分隔符的字符串中特定格式的字符串取出并赋值给变量

2024-11-22 22:26:56
推荐回答(1个)
回答1:

应该把完整需求说出来的,不然就此写的你未必会进一步改
要写到批处理中:
@echo off
set str=6s7ew89 李四 56ee789
set/a n=0
for %%i in (%str%)do echo;%%i>tem
for /f "tokens=1* delims=:" %%i in ('findstr/n [0-9] tem')do set s%%i=%%j&set n=%%i
del tem
rem 已把含数字部分保存到数组变量s1-sn 了,例如可以用下面代码显示,其实这个步骤没必要,只需在上一步的for里的%%j 就是需要的变量,该作什么从那就可以做了:
setlocal enabledelayedexpansion
if %n% gtr 0 for /L %%i in (1,1,%n%)do echo !s%%i!
pause