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

如何用Notepad++或Python批量提取多文件中括号内的文本内容

方案1:无需写代码,用Notepad++批量处理

操作步骤如下:

  1. 提前备份所有待处理文件,避免操作失误丢失数据,将所有需要处理的文件放到同一个文件夹中
  2. 按下Ctrl+Shift+F快捷键打开「在文件中查找」面板,切换到「在文件中替换」标签页
  3. 按如下参数配置:
    • 查找目标:.*?\((.*?)\)|.+
    • 替换为:$1\n
    • 勾选「正则表达式」选项,取消勾选「. 匹配换行符」
    • 「目录」选择你存放待处理文件的文件夹,需要处理子目录文件就勾选「包含子目录」
  4. 先点击「在文件中查找」预览匹配结果,确认提取内容符合预期后,点击「全部替换」即可完成批量处理

注:该方法会直接提取所有被()包裹的内容,无论括号在该行的什么位置,比你之前的单文件行匹配方法适配范围更广。


方案2:Python脚本批量处理(更灵活可控)

如果需要自定义规则、处理文件数量极大,或者需要保留处理日志,可以用这个脚本:

import re
import os

# 待处理文件所在的文件夹路径,可自行修改
folder_path = "./待处理文件"
# 匹配括号内容的正则,要匹配其他括号可修改规则
extract_pattern = re.compile(r"\((.*?)\)", re.S)

for filename in os.listdir(folder_path):
    file_full_path = os.path.join(folder_path, filename)
    # 跳过子文件夹,仅处理文件,需要指定后缀可添加判断,比如 and filename.endswith(".txt")
    if not os.path.isfile(file_full_path):
        continue
    try:
        # 编码不对可改为gbk/ansi等你的文件实际编码
        with open(file_full_path, "r", encoding="utf-8") as f:
            raw_content = f.read()
        # 提取所有括号内的内容
        extracted = extract_pattern.findall(raw_content)
        # 结果写回原文件,要输出到新路径可修改此处的写入路径
        with open(file_full_path, "w", encoding="utf-8") as f:
            f.write("\n".join(extracted))
        print(f"处理成功:{filename}")
    except Exception as e:
        print(f"处理失败:{filename},错误信息:{str(e)}")

脚本使用说明:

  • 处理前请先备份所有原文件,避免数据丢失
  • 可根据需求修改正则匹配规则、文件编码、后缀筛选条件、输出路径等参数

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 05:54:04