Board logo

标题: 变量替换变量怎么实现? [打印本页]

作者: pigvip     时间: 2006-10-11 06:58    标题: 变量替换变量怎么实现?

set a=123
set b=1234
由变量a替换b中相同的为0,怎么实现?
是这样吗?其中A变量怎么写法?
echo %b:a=0%
作者: pengfei     时间: 2006-10-11 08:46
代码如下:
@echo off
setlocal enabledelayedexpansion
set a=123
set b=1234
set "b=!b:%a%=0!"
echo %b%
pause

作者: weilong888     时间: 2006-10-11 09:33
如果
set a=123
set b=1234
而最终echo %b%要求显示0004呢?
这个代码应该怎么写呢?
作者: namejm     时间: 2006-10-11 09:38


  Quote:
Originally posted by weilong888 at 2006-10-11 09:33:
如果
set a=123
set b=1234
而最终echo %b%要求显示0004呢?
这个代码应该怎么写呢?

把 set "b=!b:%a%=0!" 改成 set "b=!b:%a%=000!" 就可以了。
作者: 3742668     时间: 2006-10-12 07:01
不启用延迟的环境变量也可以,不过局限性较大:
set "a=123"
set "b=1234"
echo %b:%a%=000% | findstr .