批处理的字符串替换语句中,对于含有特殊字符的字符串,怎么处理呢?
CALLSETstr1=%%str1:!!var1!!=!!var2!!%%这句话中,var1和var2是提前已经赋值好了的字符串变量,想把str1中,含有变量var1的...
CALL SET str1=%%str1:!!var1!!=!!var2!!%%
这句话中,var1和var2是提前已经赋值好了的字符串变量,
想把str1中,含有变量var1的字符串部分,替换成变量var2代表的字符串
但是替换不了,可能变量中有/的原因吧~
因为
SET "var1=/usr/include"
SET "var2=/copy/sys/include" 展开
这句话中,var1和var2是提前已经赋值好了的字符串变量,
想把str1中,含有变量var1的字符串部分,替换成变量var2代表的字符串
但是替换不了,可能变量中有/的原因吧~
因为
SET "var1=/usr/include"
SET "var2=/copy/sys/include" 展开
3个回答
展开全部
@echo off&setlocal enabledelayedexpansion
SET "var1=/usr/include"
SET "var2=/copy/sys/include"
Set "star=/usr/include123"
set "star=!star:%var1%=%var2%!"
echo %star%
pause
套上变量的话只要加上变量延迟,外围用!,里面和调用变量一样就行了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
正确的写法是
call set "str1=%%str1:!ver1!=!ver2!%%"
如果还是不行,最好把原bat贴出来,不要认为别的没问题
call set "str1=%%str1:!ver1!=!ver2!%%"
如果还是不行,最好把原bat贴出来,不要认为别的没问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询