[英]Passing a parameter containing comma to a Batch file and replace
我正在按如下方式调用我的批处理文件
example.bat“ abc,xyz”
现在,里面的批处理文件我需要更换逗号,
用%5c%2c
set var1=%1
set var1=%var1:","=%5c%2c%
我什至试过
set var1=%var1:","=%%5c%%2c%
set var1=%var1:,=%5c%2c%
但是没有任何效果,它实际上是在末尾附加替换而不是逗号。 另外,该参数的末尾用双引号引起来。
我期望结果是: abc%5c%2c xyz
有人可以帮我解决这个问题吗? 谢谢 !
您需要为此延迟扩展。 另外,要摆脱双引号,应使用%~1
而不是%1
。 您应该加倍百分号以显示文字%
s。
@echo off
setlocal enabledelayedexpansion
set var1=%~1
set var1=!var1:,=%%5c%%2c!
echo !var1!
pause
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.