我在日志文件中有xml,如下所示:
<ServiceRs>
1
</ServiceRs>
text text text
<ServiceRs>
2
</ServiceRs>
text
所以,我需要从日志文件中删除这个XML,并且我正在尝试使用:
pcregrep -M '<ServiceRs>(\n|.)*</ServiceRs>'
但在此之后我没有得到两个ServiceRs xml,我得到了这个:
<ServiceRs>
1
</ServiceRs>
text text text
<ServiceRs>
2
</ServiceRs>
我知道,我可以修改模式 - (\ n |。)* - &gt; (\ n |。){0,n),但我真的不知道xml中有多少行。
答案 0 :(得分:1)
你能试试吗
pcregrep -M '<ServiceRs>(\n|.)*?</ServiceRs>'
?
用于懒惰匹配
它仅匹配<ServiceRs>
和</ServiceRs>
之间的内容,并排除其他text text...