批处理:FINDSTR正则表达式不起作用

时间:2018-12-05 23:48:26

标签: regex windows batch-file cmd findstr

echo a.txt| FINDSTR /R ".+\.txt$"

不起作用,甚至不起作用:

echo a.txt| FINDSTR /R .+\.txt$

为什么?

编辑:

现在可以使用!

echo a.txt| FINDSTR /R ..*\.txt$

1 个答案:

答案 0 :(得分:3)

a)Findstr的正则表达式中没有+。请改用*..*应该是.+的正确替代。

b)行尾可以有不可见的字符,例如如果echo前有尾随空格,则由|引起。在行尾添加另一个.以覆盖该行。

C:\> echo a.txt | findstr /r ".*\.txt.$"
a.txt

也可以不用引号。