免责声明:
-raw
开关(?sm)
和-AllMatches
限定符我有一个〜1200行的日志文件,所以不要太大。日志文件是纯文本'的混合。然后那个纯文本'重复为XML。我想选择(并最终删除)纯文本块'所以XML块仍然存在。
纯文本块以Log Name:
开头,然后是该行的更多文字,然后是多行文字,以Event Xml:
结尾(此行没有其他内容)。
纯文本块示例:
Log Name: AD FS Tracing/Debug
(multiple lines of text)
Event Xml:
我的尝试要么从第一个Log Name:
到最后一个Event Xml:
示例正则表达式模式:
'(?smi)Log Name:.*Event Xml:'
在powershell和notepad ++中试过这个。日志文件来自Windows 2012R2上的事件查看器,因此可以解决我的整体问题的替代解决方案:如何从事件查看器中仅导出XML
?
修改(@ https://stackoverflow.com/users/3832970/wiktor-stribi%c5%bcew)
'(?si)Log Name:.*?Event Xml:'
选择整个日志文件。我曾尝试修改类似的问题,但它并没有选择我想要的东西。因此,为什么我问我的具体问题 - 它不是重复的。