问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

文件批量重命名工具Bulk Rename Utility正则表达式高级技巧教程

创作时间:
作者:
@小白创作中心

文件批量重命名工具Bulk Rename Utility正则表达式高级技巧教程

引用
CSDN
1.
https://blog.csdn.net/fish74531/article/details/144073422

在Windows系统中,虽然有很多重命名工具,但面对复杂的文件重命名需求时,Bulk Rename Utility的汉化版凭借其强大的正则表达式功能,能够轻松应对各种复杂的批量处理场景。本文将详细介绍如何使用Bulk Rename Utility的正则表达式功能,对文件进行高级批量重命名操作。

使用正则表达式前后颠倒批量重命名

歌曲名与歌手名对调

在旧的MP3文件命名中,歌曲名通常在前,歌手名在后,中间用"-"连接。但在现代播放器中,这种命名方式已不再适用,需要将歌手名放在前面,歌曲名放在后面。手动修改显然效率低下,这时就可以使用Bulk Rename Utility的正则表达式功能来完成批量重命名。

正则表达式基础

在使用正则表达式之前,我们需要了解一些基本的通配符:

  • .:任何字符
  • ^:以行开始
  • $:以行结束
  • \<:以单词开始
  • \>:以单词结束
  • [...]:字符集(如[abc])或范围(如[a-z]
  • [^...]:字符不设定范围
  • \d:任何十进制数字
  • \D:任何非十进制数字
  • \s:任何空白字符
  • \S:非空白字符
  • \w:任意"word"字符
  • \W:任意非"word"字符
  • \x:其他特殊含义的转义字符
  • \xHH:16进制字符代码
  • ?:匹配前面的0或1次
  • *:0次或多次匹配前面的
  • +:1次或多次匹配前面的
  • *?+?:非贪婪匹配量词"?"和"+"
  • ( ):区域开始和区域结束
  • \n:替换时指定区域(n是1-9)

实际应用

以歌曲"不该为你动了心 - AZ珍珍.mp3"为例,如果需要将歌手名"AZ珍珍"放在前面,歌曲名"不该为你动了心"放在后面,可以在"匹配"处输入以下正则表达式:

(\S+)\s*-\s*(\S+)

在"替换"处输入:

\2-\1

原理分析

  • \S可以匹配非空白字符,包括汉字与字母,因此可以匹配歌曲名和歌手名。
  • +表示1次或多次匹配前面的\S,即匹配多个非空白字符。
  • (\S+)形成一个捕获组,代表原始的歌曲名或歌手名。
  • \s*用于匹配可能存在的空格,*表示0次或多次匹配前面的\s
  • \2-\1表示将第二个捕获组放在前面,第一个捕获组放在后面,中间用"-"连接。

英文字母名词对调

以"Zhusir Blog.txt"和"zhu blog.txt"为例,可以使用以下正则表达式进行批量重命名:

(\S+) (\S+)

或者

(\S+)\s+(\S+)

其中\s+可以匹配多个空格。

跳跃式排序重命名

如果需要将1、3、5、7、9这样的跳跃式排序改为连续排序,可以在"正则表达式"的"匹配"中使用:

\d+

在"替换"中使用:

#

然后勾选"查找",在"查找"中输入"#”,在"替换"中什么都不用输入,用于替换掉#号。再勾选"编号",方式为默认的"插入",后面选1,开始为1,递增为1,位数为3。

顺序式排序编号重命名

如果需要将连续排序改为跳跃式排序,可以将"编号"的"递增"改为2。

删除前缀重命名

对于带有前缀的文件名,如DKf004.txt,可以使用以下正则表达式删除前缀:

[a-zA-Z]*

或者

[^\d]+

后缀文件名重命名

对于夹杂着字母的后缀,如001zdj.txt,可以使用以下正则表达式:

(\d+)([a-zA-Z]+)

替换中写入:

$1或者\1

复杂文件名重命名

对于杂乱无章的文件名,可以先添加前缀,再使用正则表达式清除不需要的部分。例如:

(a)(\d{3})(\S+)

替换处写入:

$2或\2

或者使用更简单的方法:

\S+

替换为:

#

然后替换掉#号,并添加编号。

通过以上详细的案例和步骤,我们可以看到Bulk Rename Utility结合正则表达式功能,能够高效地处理各种复杂的文件重命名需求。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号