2014-02-19 148 views

回答

1

因为你正在寻找一个正则表达式,而不是一个字符串:

>echo "D:\0.0" | findstr /I "D:\0.0" 

没有给出任何。您要添加的文字标志/l

>echo "D:\0.0" | findstr /I /l "d:\0.0" 

给出:

"D:\0.0" 

如果你想用正则表达式,你需要躲避点

>echo "D:\0.0" | findstr /I "d:\0\.0" 
+0

谢谢你的人!正常工作。 – elady

+0

我想知道为什么你需要避开点而不是反斜杠? (也就是说,为什么你的最后一个例子工作......但逃避反斜杠的作品也是这样,我明白:'echo“D:\ 0.0”| findstr/I“d:\\ 0.0”'我不'不知道如何逃离点有助于^^它应该匹配“任何”字符,包括一个点,请解释![我知道转义点迫使它只匹配一个点,但为什么它有助于绕过“ \ 0“,我不明白...) –

+0

窗口的解释\只处理它为一个转义字符,如果它后面跟着像'$'这样的元字符,所以'\ 0'匹配'\ 0'而不是空字符。 –

相关问题