子字符串变量的变量

时间:2017-09-20 06:43:00

标签: batch-file

我有一个.bat文件,需要将变量与另一个变量子串。 子串将位于循环内。我在这个循环中有两个变量。

echo %%i  

echo %targetPath%

%%我是完整的字符串。如果找到匹配字符串%targetPath%

,我必须删除部分%% i

我的编码不起作用。

echo  %%i%:%targetPath%=%

我无法使用它,因为我对%% name和%name%感到困惑。这是我的预期结果。在php中,我们有一个子串函数,它能够将fullstring传递给substring函数和一个匹配的关键字。这就是我想要实现的目标

fullstr=abcdefghijk
keyword=abcd

result=efghijk

当前工作代码

setlocal EnableDelayedExpansion 

set "targetPath=%~dp0in"

for /r "%targetPath%" %%i in (.) do (

set "str=%%i"
echo  !str:%targetPath%=!

)

当前输出

echo  !str:C:\Users\vuser01\Desktop\Texture Packer\libgdxtools\in=!

1 个答案:

答案 0 :(得分:2)

您可以使用delayed expansion

setlocal enableDelayedExpansion
set "target=some"
for %%i in ("something") do (
 set "var=%%i"
 echo !var:%target%!
)