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

如何在Notepad++中用正则删除指定路径开头的XML Song元素

正则替换移除指定路径节点方案

可用正则表达式

查找框填入以下内容:

<Song[^>]*FilePath="D:\\Sync\\DJ\\TBP[^"]*"[\s\S]*?<\/Song>\s*

替换框留空即可。

使用配置要求

  • 编辑器查找模式选择正则表达式
  • 无需开启多行匹配模式,正则内[\s\S]已经可以匹配包含换行在内的任意字符
  • 若使用Notepad++等部分对反斜杠转义规则不同的编辑器,可将正则内的\\替换为单个\再尝试

匹配逻辑说明

  • 精准定位所有<Song>起始标签中,FilePath属性值以D:\Sync\DJ\TBP开头的节点
  • 非贪婪匹配该节点从起始标签到对应</Song>闭合标签之间的全部内容(包含内部子标签、注释、换行、文本)
  • 自动匹配节点末尾的多余空白、换行符,避免删除节点后残留大量空行

替换效果验证

对你提供的示例XML执行替换后,将完整保留路径为D:\Sync\DJ\Library2开头的节点,完全移除TBP路径下的节点,最终结果如下:

<Song FilePath="D:\Sync\DJ\Library2\Caribou - Julia Brightly.mp3" FileSize="5021908" Flag="25165826">
  <Tags Genre="Melodic" Album="Our Love" TrackNumber="7" Grouping="4" Year="2014" User1="T/" User2="v" Bpm="0.428571" Key="Am" Flag="1" />
  <Infos SongLength="121.986032" LastModified="1652480858" FirstSeen="1643922546" FirstPlay="1645175276" LastPlay="1648048342" PlayCount="6" Bitrate="320" UserColor="4278255615" Cover="1" />
  <Comment>Fade in/out! E3|vmkhb|32b+E3|vmkhb|16b</Comment>
 </Song>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 10:15:29