如何使用包含 space 的字符串检查环境变量的值

How to check value of environment variable with string containing a space

(免责声明:在发布此问题之前,我查看了十几个相关的 SO 问题,但找不到答案。)

如何检查包含带有 space 的字符串的变量的值?

例如:

set str1=has space
if %str1%==has space echo Equal

上面产生了以下错误:

space==has was unexpected at this time.

在右侧的字符串周围添加双引号没有帮助。

我在 Windows 7 上使用命令提示符 [版本 6.1.7601]。

使用双引号:

set str1=has space
if "%str1%"=="has space" echo Equal