windows - How to replace with percent character in cmd.exe? -
in windows command prompt, trying replace space in set string=hello world string %20. naively trying use string literal %20 this:
set string=%string: =%20% results in helloworld20%. trying use escape character ^ this:
set string=%string: =^%20% also results in helloworld20%. trying escape % doubling this:
set string=%string: =%%20% results in helloworld%20%. tried use variable replacement this:
set r=%20 set string=%string: =%r%% which results in helloworldr%%.
i found this, handles escaping of percent characters in variables. found this, handles escaped input of percent characters. neither 1 seems apply string replacing.
a tutorial/docu page windows cmd.exe found online tells me have correct syntax, not cover replacing percent characters.
after reading of those, tried:
setlocal enabledelayedexpansion set string=!string: =%20! which results in !string: =%20!.
i out of ideas, can help?
you need delayed expansion in case:
set "str1=hello world!" set "str2=%20" /f "delims=" %a in ('cmd /v:on /c @echo "%str1: =!str2!%"') set "str3=%~a" echo %str3%
Comments
Post a Comment