使用 vim,我试图删除块之外的所有文本。<text>
这需要跨越换行符和其他(不相关的)标签。
我尝试使用正则表达式替换换行符的文本,但由于几个原因失败了,其中一个是我的尝试没有跨越多行,我需要让我的匹配是非贪婪的。(这是使用{-}
某种方式完成的吗?)
应该匹配我要删除的内容的正则表达式看起来像:<//text>.*<text.*>
但如果我使这个匹配不贪婪,我可能会有其他问题。(我也意识到我将在开始时清理一个部分标签部分。)
我应该采取另一种方法,还是有人可以指导我使用vim删除不在此类标签之间的所有内容?
编辑:包括示例文本
<contributor>
<username>MalafayaBot</username>
<id>628</id>
</contributor>
<minor />
<comment>Robô: A modificar Categoria:Vocábulo de étimo latino (Português) para Categoria:Entrada de étimo latino (Português)</comment>
<text xml:space="preserve">={{-pt-}}=
==Substantivo==
{{flex.pt|ms=excerto|mp=excertos}}
{{paroxítona|ex|cer|to}} {{m}}
# [[extrato]] de um [[texto]], [[fragmento]]
#: ''A seguir, um '''excerto''' do texto original.''
===Tradução===
{{tradini}}
* {{trad|es|extracto}}
* {{trad|fr|extrait}}
{{tradmeio}}
* {{trad|en|excerpt}}
{{tradfim}}
=={{etimologia|pt}}==
:Do latim ''[[excerptu]]'' (colhido de).
=={{pronúncia|pt}}==
===Brasil===
* [[SAMPA]]: /e."sEx.tu/
* [[AFI]]: /esˈertu/
[[zh:excerto]]</text>
<sha1>8i1zywj37s74ah4wnai11ohorfjn8j5</sha1>
<model>wikitext</model>