使用 Windows CMD findstr 匹配由一个或多个空格分隔的两个单词的行

问题描述

对于文件 sub.txt

callfoo()     # no match
call_foo()    # no match
call foo()    # match
call  foo()   # match

命令

findstr call.*foo sub.txt

匹配所有行。如何匹配最后两行,其中“call”和“foo”由一个或多个空格分隔,没有其他字符?尝试将正则表达式与

一起使用
findstr /R call\s.*foo sub.txt

不匹配任何内容

解决方法

Solution.java:14: error: variable a is already defined in method main(String[])
            int a = scan.nextInt();
                ^
1 error

找到 findstr /RC:"call *foo" sub.txt 后跟一个空格,后跟零个或多个空格,再后跟 call

foo 开关的使用对于将空格作为字符而非分隔符进行处理至关重要。

/c 不是残缺的 \s 正则表达式的一部分。