我有一个大的 XML 日志文件(+100 000 行),如下所示:
<container>
<request:getApples xml="...">
...
</request:getApples>
<request:getOranges xml="...">
...
</request:getOranges>
</container>
...
我想提取:getXXXX
部分到
getApples
getOranges
通过在 Sublime Text 2 中执行正则表达式查找和替换。
有点像
Find: [^(request:)]*(.*) xml
Replace: $1\n
任何正则表达式大师可以提供帮助?
最佳答案
更正 mart1n 的 answer并实际使用 ST2 和您的示例输入,我想出了以下内容:
首先,CtrlA 全选。然后,CtrlH,
Search: .*?(get\w+) .*
Replace: $1
全部替换
然后,
Search: ^[^get].*$
Replace: nothing
全部替换
最后,
Search: ^\n
Replace: nothing
全部替换
你还剩下:
getApples
getOranges
关于regex - Sublime 的多行xml正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17994302/