我试图从包含这种格式的文本的大文件中提取多次测试
CL blahblahblah SP blahblahblah blahblahblah blahblahblah DE blahblahblahblahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah AB blahblahblah blahblahblah blahblahblah blahblahblahblahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah C1 blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah lahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah RP blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah EM blahblahblah blahblahblah blahblahblah blahblahblah NR blahblahblah blahblahblah blahblahblah blahblahblah TC blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah Z9 blahblahblah blahblahblah blahblahblah blahblahblah PU blahblahblah blahblahblah blahblahblah blahblahblah PI blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah
我只对以C1,AB,TI开头的条目感兴趣,但有时这些条目跨越多行,并且跟随它们的XX标记行并不总是相同.有没有一种简单的方法只保留这些条目?
所以我剩下的文字应该是这样的:
TI blahblahblah AB blahblahblah b lah blahblah blah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah C1 blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah TI blah blah blah blah blah blah AB blahblahblah blahblahblah blahblahblah blahblahblahblahblahblah blahblahblah blahblahblah blahblahblah blahblahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah C1 blahblahblah blahblahblah blahblahblah blahblahblahblahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah
等等..
非常感谢!
解决方法
我会做:
:$put='X' | 1,$-1g/^\(\s\|C1\|AB\|TI\)\@!/,/^\S/-d :$d
这将执行以下操作:
>在末尾插入一行包含“X”的行
>对于除最后一行(1,$ – 1)之外的每一行,如果它以非空格开始并且不以C1,AB或TI(g / pattern /)开头,则删除(d)直到下一行不以空格开头,/ pattern / not included( – 这是-1的缩写)
>最后删除“X”行
为了尝试使用Gvim:
>将此代码复制到剪贴板
>在Gvim中运行:@(从链接到剪贴板的寄存器中播放Ex命令).
我得到了什么:
AB blahblahblah blahblahblah blahblahblah blahblahblahblahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah C1 blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah lahblahblah blahblahblah blahblahblah blahblahblah blahblahblah blahblahblah
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。