Python功能制作之正则表达式批量删除并重命名文件

在平时,我们总是会遇到一种需要批量更改,或者是删除文件名字的情况。

对此,我们可以使用正则表达式进行匹配,然后去匹配删除相应的字数。

比如图片序列,因为一些特殊情况,导致名字为:

00000-new00000.png ---> 00001-new00001.png ---> 00002-new00002.png

这种情况会导致图片序列无法导入到pr、nuke等软件中,我们需要将前缀进行删除才行。

以下是python代码:

import os
import re

# 指定文件夹路径
folder_path = 'C:\\Users\\xxx\\Desktop\\ChangeFolder'

# 获取文件夹中的所有文件
file_list = os.listdir(folder_path)

# 定义正则表达式模式,匹配以数字开头的部分
pattern = re.compile(r'^\d\d\d\d\d-')

# 遍历文件列表
for file_name in file_list:
    # 检查文件是否是图片文件(可以根据需要扩展支持的图片文件类型)
    if file_name.lower().endswith(('.jpg', '.jpeg', '.png', '.gif', '.bmp')):
        # 使用正则表达式替换文件名
        new_file_name = re.sub(pattern, '', file_name)

        # 构建新的文件路径
        old_file_path = os.path.join(folder_path, file_name)
        new_file_path = os.path.join(folder_path, new_file_name)

        # 重命名文件
        os.rename(old_file_path, new_file_path)
        print(f'Renamed: {file_name} to {new_file_name}')

print("ok")

猜你喜欢

转载自blog.csdn.net/q244645787/article/details/134226417