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

如:张三6s7ew89李四56ee789取出含数字部分并赋值给变量。我用这个取出显示数字却不知怎么赋值给变量FOR%iin(张三67ew89李四56ee789)do@ec... 如:
张三 6s7ew89 李四 56ee789
取出含数字部分并赋值给变量。
我用这个取出显示数字却不知怎么赋值给变量
FOR %i in (张三 67ew89 李四 56ee789) do @echo %i | findstr [0-9]
请高手赐教。。
展开
 我来答
yyykkkyyyy
2011-12-23 · TA获得超过3136个赞
知道大有可为答主
回答量:2691
采纳率:40%
帮助的人:3300万
展开全部
应该把完整需求说出来的,不然就此写的你未必会进一步改
要写到批处理中:
@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
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式