我有一长串要过滤的生成报告。报告是这样的:
Report Name
Report Date
Blah blah blah
Blah: WORD1
Blah blah
blah blah: WORD2
blah blah
我正在尝试使用 ag(PCRE 正则表达式)或 rg(rust 正则表达式)并在文件的不同位置(包含新行)查找包含 WORD1 和 WORD2 的所有文件。
我已经搜索了 SX 并发现这些不起作用:
> ag (?=.*WORD1)(?=.*WORD2)
> ag (?=.*WORD1)((.|\n)*)(?=.*WORD2)
更新
正如@WiktorStribiżew 指出的那样,该 ag 使用 PCRE。对不起这个错误。
我的预期输出是:
blah blah: WORD2
或者只是匹配文件的列表。
ps目前我已经设法使用这个:
> ag "WORD2" $(ag -l "WORD1")