【发布时间】:2009-04-10 00:41:28
【问题描述】:
我需要获取<Annotation> 和</Annotation> 之间的所有文本,其中出现了单词MATCH。如何在 VIM 中做到这一点?
<Annotation about="MATCH UNTIL </Annotation> " timestamp="0x000463e92263dd4a" href=" 5raS5maS90ZWh0YXZha29rb2VsbWEvbGFza2FyaS8QyrqPk5L9mAI">
<Label name="las" />
<Label name="_cse_6sbbohxmd_c" />
<AdditionalData attribute="original_url" value="MATCH UNTIL </Annotation> " />
</Annotation>
<Annotation about="NO MATCH" href=" Cjl3aWtpLmhlbHNpbmtpLmZpL2Rpc3BsYXkvbWF0aHN0YXRLdXJzc2l0L0thaWtraStrdXJzc2l0LyoQh_HGoJH9mAI">
<Label name="_cse_6sbbohxmd_c" />
<Label name="courses" />
<Label name="kurssit" />
<AdditionalData attribute="original_url" value="NO MATCH" />
</Annotation>
<Annotation about="MATCH UNTIL </ANNOTATION> " score="1" timestamp="0x000463e90f8eed5c" href="CiZtYXRoc3RhdC5oZWx zaW5raS5maS90ZWh0YXZha29rb2VsbWEvKhDc2rv8kP2YAg">
<Label name="_cse_6sbbohxmd_c" />
<Label name="exercises_without_solutions" />
<Label name="tehtäväkokoelma" />
<AdditionalData attribute="original_url" value="MATCH UNTIL </ANNOTATION>" />
</Annotation>
【问题讨论】:
-
我假设您想以理解 XML 的方式执行此操作,因此不是元素结尾的 的出现不被 VIM 匹配,但被计为匹配体的一部分?如果是这样,我不知道VIM是否可以像这样进行XML-aware模式匹配。
-
另外,我尝试使示例的格式更易于查看。我假设属性中的空格是有目的的,并留在那里。
-
“获取所有文本”是什么意思?突出它?抽吗?将其附加到命名缓冲区?
-
jholloway7:我不知道如何将其附加到命名缓冲区并将突出显示的文本保存到单独的文件中。
-
您的 XML 无效。属性值中不允许使用
<。
标签: vim design-patterns match