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

如何在Python中拆分JSON文件中括号包裹的内容为独立文件?

用Python提取JSON中括号包裹的句子并保存为独立文件

嘿,这个需求其实挺常见的,我来给你捋清楚实现步骤,附上可直接用的代码,还会讲清楚细节~

步骤拆解

咱们先把整个流程理明白:读取JSON文件 → 解析拿到目标字符串 → 提取所有括号内的句子 → 逐个保存成独立文件。

完整代码实现

import json
import re

def extract_and_save_sentences(json_file_path):
    # 1. 读取并解析JSON文件
    try:
        with open(json_file_path, 'r', encoding='utf-8') as f:
            data = json.load(f)
        
        # 这里假设你的JSON里,带括号的句子存在某个键下,比如"content"
        # 如果结构不一样,你需要改成对应的键名,比如data["sentences"]
        target_text = data.get("content", "")
        if not target_text:
            print("JSON里没找到目标内容,请检查键名是否正确!")
            return

        # 2. 用正则提取所有括号包裹的内容
        # 正则r'\((.*?)\)'是匹配小括号内的非贪婪内容,适合无嵌套括号的场景
        sentences = re.findall(r'\((.*?)\)', target_text)
        if not sentences:
            print("没找到任何括号包裹的句子!")
            return

        # 3. 逐个保存为独立文件
        for idx, sentence in enumerate(sentences, start=1):
            # 去除句子前后的空白字符(比如换行、空格)
            cleaned_sentence = sentence.strip()
            if cleaned_sentence:  # 跳过空内容
                file_name = f"sentence_{idx}.txt"
                with open(file_name, 'w', encoding='utf-8') as output_file:
                    output_file.write(cleaned_sentence)
                print(f"已保存文件:{file_name}")
        print("所有句子处理完成!")

    except FileNotFoundError:
        print(f"错误:找不到文件 {json_file_path}")
    except json.JSONDecodeError:
        print("错误:JSON文件格式不正确,请检查!")
    except Exception as e:
        print(f"发生未知错误:{str(e)}")

# 调用示例,替换成你的JSON文件路径
extract_and_save_sentences("your_file.json")

关键细节说明

  • JSON结构适配:代码里假设目标字符串存在"content"键下,如果你的JSON结构不同(比如键名是"text"),一定要修改data.get("content", "")里的键名。
  • 正则匹配:用r'\((.*?)\)'是因为它会非贪婪匹配每个小括号里的内容,避免把多个括号的内容连在一起提取。如果你的句子里有嵌套括号(比如(我是(嵌套)句子)),这个正则就不适用了,那时候需要用更复杂的递归正则或者语法分析器,不过一般句子不会有这种情况。
  • 文件命名:用sentence_1.txt、sentence_2.txt这种递增命名,你也可以根据句子内容生成更有意义的文件名(比如去掉特殊字符后作为文件名),但要注意文件名不能包含操作系统禁止的字符(比如/、\、:等)。
  • 异常处理:代码里加了几种常见错误的捕获,比如文件找不到、JSON格式错误,方便你排查问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 04:46:33