【发布时间】:2019-09-13 19:10:41
【问题描述】:
我有一个具有以下模式的文件。
Foo $var1
.........
.........
Foo $var2
..........
..........
..........
Yes
我只想匹配以“Foo”开头并具有“是”的“部分”。 (您会注意到每个部分的末尾都有一个空的换行符)
预期的输出应该是。
Foo $var2
..........
..........
..........
Yes
我试过了
pcregrep -M "^Foo(.|\n)*^是"
但不幸的是,这从上一节开始匹配,并将倒数第二节与返回匹配项为“是”的部分混为一谈,所以我没有得到一个以“Foo”开头并具有“是的”,但以“Foo”开头的部分与以前一样多
我的困境是,如果在本节末尾我匹配“Foo”却看不到“Yes”,如何丢弃上一个匹配项。
我尝试使用后视功能,但它不能用于可变长度。
【问题讨论】:
-
请将该示例输入的所需输出(无描述)添加到您的问题(无评论)。