Batch file 从变量中剥离字符

Batch file 从变量中剥离字符,batch-file,Batch File,我正在尝试从%%~ni中删除空格和逗号。通过将它放入我的新变量,我成功地做到了这一点!网址。它的回声很好,但是有人知道我为什么不能在这里使用它吗:set“line=!line:REPLACE=!url!!” 回答其他任何有此问题的人: @echo off setlocal enableextensions enabledelayedexpansion for /R %%i in (*.csv) do ( ren "%%~i" temp.tmp (for /F "usebackq tokens=*

我正在尝试从
%%~ni
中删除空格和逗号。通过将它放入我的新变量
,我成功地做到了这一点!网址。它的回声很好,但是有人知道我为什么不能在这里使用它吗:
set“line=!line:REPLACE=!url!!”


回答其他任何有此问题的人:

@echo off
setlocal enableextensions enabledelayedexpansion
for /R %%i in (*.csv) do (
ren "%%~i" temp.tmp
(for /F "usebackq tokens=*" %%f in ("%%~dpitemp.tmp") do (
        set "line=%%f"
        set url=%%~ni
        set "url=!url: =-!"
        set "url=!url:,=!"
        set "url=!url:(=!"
        set "url=!url:)=!"
        for /F "delims=" %%e in ("!url!") do set "line=!line:REPLACE=%%e!"
        echo(!line!
)) > "%%~i"
del "%%~dpitemp.tmp"
)

回答其他任何有此问题的人:

@echo off
setlocal enableextensions enabledelayedexpansion
for /R %%i in (*.csv) do (
ren "%%~i" temp.tmp
(for /F "usebackq tokens=*" %%f in ("%%~dpitemp.tmp") do (
        set "line=%%f"
        set url=%%~ni
        set "url=!url: =-!"
        set "url=!url:,=!"
        set "url=!url:(=!"
        set "url=!url:)=!"
        for /F "delims=" %%e in ("!url!") do set "line=!line:REPLACE=%%e!"
        echo(!line!
)) > "%%~i"
del "%%~dpitemp.tmp"
)

set“line=!line:REPLACE=!url!!”
无法工作,但您可以为/F“delims=”%%e in(“!url!”)执行
do set“line=!line:REPLACE=%%e!”
set url=!url:(=!
设置url=!url:)=快速问题,你知道为什么括号在这里不起作用吗?使用引用的语法,如
设置“url=!url:(=!”
设置“url=!url:)=!”
来保护这些特殊字符不被解析器识别…太好了,非常感谢你的帮助(:你也可以使用
调用集“line=%%line:REPLACE=!url!%”)
。我建议您阅读。虽然主题不同,但问题和解决方法是相同的…
set“line=!line:REPLACE=!url!!”
无法工作,但您可以为/F“delims=”%%e in(“!url!”)设置“line=!line:REPLACE=%%e!”
设置url=!url:(=!
设置url=!url:)=!快速提问,你知道为什么括号在这里不起作用吗?使用引用的语法,如
设置“url=!url:(=!”
设置“url=!url:)=!”
来保护这些特殊字符不被语法分析器识别…太好了,非常感谢你的帮助(:你也可以使用
调用集“line=%”行:REPLACE=!url!%%)
。我建议你阅读。虽然主题不同,但问题和解决方法是一样的。。。