我在一个文本文件中有以下模式。
######################
# ADD=123 New Comment
######################
if ($ADD==123)除此之外,以下行是可变的
# ADD=124 Old Comment
if ($ADD==1234)我尝试过使用pcregrep进行多行贪婪,但我不擅长使用正则表达式。任何如何提取此模式的指针。
[root@srv admin]# pcregrep -M '######################\n#*\n' text.php发布于 2012-12-10 14:17:30
使用sed:
sed -n '/###[#]*/,/if (\$ADD/{p}' input发布于 2015-11-23 12:39:45
pcregrep -Mo '(?<=#)\s*ADD=1234' text.phppcregrep -multiline -only,看后面(找到最后一个#),然后是任意数量的空格,然后是‘ADD=1234’(或者你可以做'ADD=[:digit:]*')
希望这能有所帮助
https://stackoverflow.com/questions/13795877
复制相似问题