【发布时间】:2015-08-20 20:42:48
【问题描述】:
所以我希望能够搜索字符串“[ FAILED ]”和字符串“。”它们都在文本文件的同一行上。我该怎么做?
我试过了:
FINDSTR /C:"[ FAILED ]" /C:"." output_.txt
但它会生成包含任一字符串的行。如果可能的话,我还希望能够从我的发现中排除任何包含数字的行。
【问题讨论】:
标签: string batch-file command findstr
所以我希望能够搜索字符串“[ FAILED ]”和字符串“。”它们都在文本文件的同一行上。我该怎么做?
我试过了:
FINDSTR /C:"[ FAILED ]" /C:"." output_.txt
但它会生成包含任一字符串的行。如果可能的话,我还希望能够从我的发现中排除任何包含数字的行。
【问题讨论】:
标签: string batch-file command findstr
我已经使用管道回答了我自己的问题并提出了以下命令:
FINDSTR /C:"[ FAILED ]" output_.txt | FINDSTR /C:"." | FINDSTR /V [0-9]
【讨论】:
可以使用两个正则表达式搜索字符串通过单个 FINDSTR 获得答案。
一个字符串查找[ FAILED ],后跟.,另一个查找.,后跟[ FAILED ]。请注意,. 和 [ 文字必须被转义,] 文字没有必要转义,但它使意图更加明显。
findstr /r /c:"\[ FAILED \].*\." /c:"\..*\[ FAILED \]" output.txt
我不确定哪个更快 - 一个 FINDSTR 带有两个搜索字符串,或者两个 FINDSTR 通过管道连接,每个带有一个搜索字符串。
【讨论】: