在 windows 批次中比较带有双引号 " 的字符
compare a character with double quotes " in windows batch
我想在 windows 批处理文件中用双引号 " 比较单个字符。
@echo off
setlocal EnableDelayedExpansion
set var=before
for /f %%a in (zen.csv) do (
set var=%%a
echo !var:~-1!
IF "!var:~-1!"=="""" (
@echo found
)
)
pause
结果如下:
0
1
"
"
"
0
1
2
如您所见,批处理没有输出 "found"。如何用双引号比较一个字符?
@echo off
setlocal EnableDelayedExpansion
set var=before
for /f %%a in (zen.csv) do (
set var=%%a
echo !var:~-1!
IF !var:~-1!==^" (
@echo found
)
)
pause
用脱字符 ^
转义双引号,变成 ^"
。省略外部双引号进行比较。插入符号将转义许多字符,除了 %
需要加倍转义成为 %%
.
我想在 windows 批处理文件中用双引号 " 比较单个字符。
@echo off
setlocal EnableDelayedExpansion
set var=before
for /f %%a in (zen.csv) do (
set var=%%a
echo !var:~-1!
IF "!var:~-1!"=="""" (
@echo found
)
)
pause
结果如下:
0
1
"
"
"
0
1
2
如您所见,批处理没有输出 "found"。如何用双引号比较一个字符?
@echo off
setlocal EnableDelayedExpansion
set var=before
for /f %%a in (zen.csv) do (
set var=%%a
echo !var:~-1!
IF !var:~-1!==^" (
@echo found
)
)
pause
用脱字符 ^
转义双引号,变成 ^"
。省略外部双引号进行比较。插入符号将转义许多字符,除了 %
需要加倍转义成为 %%
.