You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Notepad++去除XML重复块(保留首次出现项)

用Notepad++正则去除重复XML块(基于的data属性)

你可以通过Notepad++的PCRE正则表达式实现需求,核心是匹配并删除非首次出现的、带有相同data属性值的<mms>块,具体操作如下:

操作步骤

  1. 打开目标XML文件,按Ctrl+H调出替换窗口
  2. 在「查找模式」中选择正则表达式,并勾选「.匹配换行符」选项
  3. 填入以下正则规则:
    • 查找内容:
      (?s)(?<=.*<part[^>]*data="([^"]+)".*?)(<mms[^>]*>.*?<part[^>]*data="\1".*?</mms>)
      
    • 替换为:(留空)
  4. 点击「全部替换」,即可保留每个data属性值对应的首次<mms>块,删除后续重复项

正则说明

  • (?s):开启单行模式,让.匹配换行符,确保能匹配多行的XML块
  • (?<=.*<part[^>]*data="([^"]+)".*?):正向回顾断言,检查当前位置之前已经出现过带有相同data值的<part>标签
  • (<mms[^>]*>.*?<part[^>]*data="\1".*?</mms>):捕获后续出现的、带有相同data值的完整<mms>块,替换为空即可删除重复项

注意事项

  • 确保XML结构规范,每个<mms>块仅包含一个<part>标签(若有多个<part>,需调整正则逻辑)
  • 大型XML文件操作前请务必备份,避免意外数据丢失
  • 若data属性值包含特殊字符(如转义引号),需微调正则适配

内容的提问来源于stack exchange,提问作者user20446145

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 21:31:02