如何解决根据特定的内部标签查找Xml标签
我有一个包含标签的xml文件。我想从包含内部<value>
标记的文件中删除所有<isActive>
标记。我正在使用正则表达式尝试在Notepad ++中查找并替换它。
我创建了此正则表达式,无法继续进行操作。
<value>.*?</value>
下面是示例xml文件`
<value>
<fullName>CMT - AAPAC - ANZ - Telstra - Media</fullName>
<default>false</default>
<label>CMT - AAPAC - ANZ - Telstra - Media</label>
</value>
<value>
<fullName>CMT - AAPAC - ASEAN - C&M - Comms</fullName>
<default>false</default>
<isActive>false</isActive>
<label>CMT - AAPAC - ASEAN - C&M - Comms</label>
</value>
<value>
<fullName>CMT - AAPAC - ANZ - Telstra - Media</fullName>
<default>false</default>
<label>CMT - AAPAC - ANZ - Telstra - Media</label>
</value>
解决方法
您可以使用
FindWhat :(?s)<value>(?:(?!<value>).)*?<isActive>.*?</value>
替换为 :(空字符串)
请参见regex demo online。详细信息:
-
(?s)
-.
匹配换行符模式 -
<value>
-字符串 -
(?:(?!<value>).)*?
-任何不以value
子字符串开头的字符,零个或多个出现,但尽可能少 -
<isActive>
-字符串 -
.*?
-零个或多个字符,尽可能少 -
</value>
-一个字符串。
查看演示和设置:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。