如何使用vim基于正则表达式删除文件中的文本

Tes*_*est 2 vim

我有一个像这样的XML文件:

<fruit><apple>100</apple><banana>200</banana></fruit>
<fruit><apple>150</apple><banana>250</banana></fruit>
Run Code Online (Sandbox Code Playgroud)

现在我要删除文件中的所有文本,除了标签apple中的单词.也就是说,该文件应包含:

100
150
Run Code Online (Sandbox Code Playgroud)

我怎么能得到这个?

Sha*_* D. 5

:%s/.*apple>\(.*\)<\/apple.*/\1/
Run Code Online (Sandbox Code Playgroud)

那应该做你需要的.为我工作.

基本上只是抓取所有内容并包括标签,然后反向引用apple开始和结束标记之间的所有内容,并匹配到该行的其余部分.用第一个反向引用替换它,这是苹果标签之间的东西.