批量去除文本标题字符


没去除之前。

image.png


去除之后:


image.png


import os
import re

# 正则表达式:只保留中文字符
pattern = r"[^\u4e00-\u9fa5]"

# 获取当前脚本的目录
current_work_dir = os.path.dirname(__file__)

# 动态生成文件路径
source_folder = os.path.join(current_work_dir, '采集好的数据')
output_folder = os.path.join(source_folder, '改')

# 打印当前目录和生成的路径
print("Current working directory:", current_work_dir)
print("Source folder:", source_folder)
print("Output folder:", output_folder)

# 如果目标文件夹不存在,则创建
if not os.path.exists(output_folder):
    os.makedirs(output_folder)

# 批量处理文件
for filename in os.listdir(source_folder):
    if filename.endswith(".txt"):
        # 只保留中文字符作为新文件名
        new_filename = re.sub(pattern, "", filename)

        # 检查新文件名是否为空
        if not new_filename.strip():
            new_filename = "未命名文件"

        # 确保文件名后缀为 .txt
        new_filename += ".txt"

        # 构建原文件路径和新文件路径
        old_file_path = os.path.join(source_folder, filename)
        new_file_path = os.path.join(output_folder, new_filename)

        # 复制文件到新的文件夹并使用新文件名
        with open(old_file_path, "r", encoding="utf-8") as file:
            content = file.read()

        with open(new_file_path, "w", encoding="utf-8") as new_file:
            new_file.write(content)

        print(f"Processed: {filename} -> {new_filename}")

print("文件标题批处理完成!")


  解释:[HideArea]

current_work_dir = os.path.dirname(__file__):获取当前python脚本所在的目录。

  source_folder 和 output_folder:使用 os.path.join 将相对路径拼接到当前工作目录下,动态生成文件夹路径。

  你可以根据需要修改这些路径,让脚本能够在任何位置运行并动态调整文件路径。

  print 语句会显示当前的工作目录、源文件夹和输出文件夹,方便调试和确认路径是否正确。



[/HideArea]