如何将扁平化JSON文件所有键对应的值替换为空字符串且保留键名
实现方案
根据你的使用场景,可选择以下任意一种高效实现方式,都能满足保留原键、替换所有值为空字符串的需求:
1. JavaScript/Node.js 方案(前端/Node运行环境)
时间复杂度O(n),保留原键顺序,性能最优:
// 原JSON解析为对象 const originalData = { /* 此处替换为你的原JSON内容 */ }; // 生成新对象 const processedData = Object.fromEntries( Object.keys(originalData).map(key => [key, ""]) ); // 输出格式化后的JSON字符串 console.log(JSON.stringify(processedData, null, 4));
2. Python 方案(本地批量处理文件场景)
适合直接处理本地存储的JSON文件,操作简单:
import json # 读取原JSON文件 with open("你的原文件路径.json", "r", encoding="utf-8") as f: data = json.load(f) # 批量替换值为空字符串 processed_data = {key: "" for key in data} # 写入新文件 with open("输出结果路径.json", "w", encoding="utf-8") as f: json.dump(processed_data, f, indent=4, ensure_ascii=False)
3. 编辑器正则替换方案(临时单次修改场景)
无需写代码,用VS Code、Sublime Text等支持正则的编辑器即可快速完成:
- 打开替换面板,开启正则匹配功能
- 查找规则填:
":\s*".*" - 替换规则填:
": "" - 点击全部替换即可完成所有修改
注意:正则替换仅适用于无嵌套的扁平化JSON结构,有嵌套的场景建议使用代码方案。
内容的提问来源于stack exchange,提问作者RRB
相关产品推荐
相关产品推荐

