【问题标题】:How to use findstr to search for multiple strings in one line如何使用findstr在一行中搜索多个字符串
【发布时间】:2015-08-20 20:42:48
【问题描述】:

所以我希望能够搜索字符串“[ FAILED ]”和字符串“。”它们都在文本文件的同一行上。我该怎么做?

我试过了:

FINDSTR /C:"[ FAILED ]" /C:"." output_.txt

但它会生成包含任一字符串的行。如果可能的话,我还希望能够从我的发现中排除任何包含数字的行。

【问题讨论】:

    标签: string batch-file command findstr


    【解决方案1】:

    我已经使用管道回答了我自己的问题并提出了以下命令:

    FINDSTR /C:"[ FAILED ]" output_.txt | FINDSTR /C:"." | FINDSTR /V [0-9]

    【讨论】:

      【解决方案2】:

      可以使用两个正则表达式搜索字符串通过单个 FINDSTR 获得答案。

      一个字符串查找[ FAILED ],后跟.,另一个查找.,后跟[ FAILED ]。请注意,.[ 文字必须被转义,] 文字没有必要转义,但它使意图更加明显。

      findstr /r /c:"\[  FAILED  \].*\." /c:"\..*\[  FAILED  \]" output.txt
      

      我不确定哪个更快 - 一个 FINDSTR 带有两个搜索字符串,或者两个 FINDSTR 通过管道连接,每个带有一个搜索字符串。

      【讨论】:

        猜你喜欢
        • 2023-02-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-06-25
        • 2011-06-26
        • 1970-01-01
        相关资源
        最近更新 更多