我想替换VI中以下xml标签之间的值以替换所有以AM结尾的列
<property name="EQ_BNKCRD_30PL_DPD_BAL_AM" desc="EQ_BNKCRD_30PL_DPD_BAL_AM">+000026928134473.000</property>
Run Code Online (Sandbox Code Playgroud)
只需在上面的标签中删除 +000026928134473.000
我努力了:%s/_AM">*.*</_AM"></g
但输出是这样的
<property name="EQ_RVLV_TRD_OPN_HI_LC_AM"><property>
Run Code Online (Sandbox Code Playgroud)
从上面的 desc 部分被删除,并且在属性标签中 / 被删除
您想要匹配_AM">从上到下的所有内容<。所以这应该有效:
:%s/_AM">[^<]*</_AM"></g
Run Code Online (Sandbox Code Playgroud)
重要的变化是从>*.*(实际上没有多大意义,因为它匹配任意数量的>符号,然后匹配后面的任何内容)到>[^<]*意味着匹配一个>,然后匹配任何不是<.