regex - 我应该如何找到包含两个字符串的所有文件?

标签 regex batch-file findstr

我的问题是为 Windows 创建一个批处理脚本文件并遍历大量文件并找到每个文件中有一行包含两个指定字符串的文件。因此,如果整个文件都包含这些字符串,那还不够好,它们应该在同一行。

例如,我有 5 个文件,其中包含以下内容:

1st: apple:green
2nd: apple
green
3rd: green
apple
4th: apple: yellowgreen
5th: apple: green

它应该返回第一个、第四个和第五个文件的文件名。

这是我的:

FINDSTR /s /i /m "apple green" *.txt | FINDSTR "\MyDirectory" >> results.txt

我应该如何修改它以使其工作?

最佳答案

findstr /i /s /m /r /c:"apple.*green" /c:"green.*apple" *.txt

关于regex - 我应该如何找到包含两个字符串的所有文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32200002/

相关文章:

javascript - 从 var 值中查找特定模式

php - --shell 停止执行,适用于命令提示符、批处理文件、PHP exec() 等

batch-file - 如何在文件中搜索字符串并将找到的行和下一行复制到另一个文件?

cmd - 使用 Windows findstr 列出不包含字符串的文件

regex - 如何在Windows中使用findstr返回具有匹配子字符串的字符串

java - 如何避免正则表达式中某个字符连续多次出现?

python - 如何使用awk替换所有组合中的不同文本 block ?

java - 使用动态匹配器进行模式匹配

windows - 我们如何在批处理文件中使用当前目录路径(%~dp0)和 'ren' 命令?

vba - 从命令行使用路径名作为参数时出现 Excel 错误