我很难动态地完成这个“子串” - 选择:
set input=%input:~4%
我想要像
这样的东西set input=%%input:~%length% %%
但我所有尝试的双倍%%和!还有更多人失败了。希望你能告诉我,这样的嵌套变量如何在windows批处理文件中起作用。
非常感谢,
最好的问候,
马库斯
答案 0 :(得分:3)
许多可能的方式
这使用CALL
第二次启动批处理解析器的事实
set length=4
call set input=%%input:~%length%%%
延迟扩展是最稳定,最安全的解决方案
setlocal EnableDelayedExpansion
set length=4
set input=!input:~%length%!
有时使用FOR参数
甚至有用setlocal EnableDelayedExpansion
set length=4
for /F %%n in ("!length!") do (
set input=!input:~%%~n!
)