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

如何将变量内的换行分隔JSON转换为逗号分隔的标准JSON格式

实现方法

首先先修正你示例代码里的语法问题:你给出的内容里用了中文全角引号“”,且"key1":value1"处漏了value1左侧的半角引号,处理前先把这些问题修正为标准英文半角引号,再执行后续操作。

方法1:JavaScript/Node.js环境处理

// 原始内容存在rawStr变量中
const rawStr = `things = [
    {"key":"value","key1":"value1"}
    {"key":"value","key1":"value1"}
    {"key":"value","key1":"value1"}
    {"key":"value","key1":"value1"}
]`;

// 提取数组内部内容
const arrayContent = rawStr.match(/\[([\s\S]*?)\]/)[1];
// 替换换行后的对象前缀为逗号+换行+对象前缀
const fixedArrayContent = arrayContent.replace(/\n\s*\{/g, ',\n{');
// 拼接为完整标准格式
const finalResult = `things = [${fixedArrayContent}]`;

console.log(finalResult);

输出结果为:

things = [
    {"key":"value","key1":"value1"},
    {"key":"value","key1":"value1"},
    {"key":"value","key1":"value1"},
    {"key":"value","key1":"value1"}
]

方法2:Python环境处理

raw_str = '''things = [
    {"key":"value","key1":"value1"}
    {"key":"value","key1":"value1"}
    {"key":"value","key1":"value1"}
    {"key":"value","key1":"value1"}
]'''
import re

# 提取数组内部内容
array_part = re.search(r'\[([\s\S]*?)\]', raw_str).group(1)
# 替换换行后的对象前缀为逗号+换行+对象前缀
fixed_array = re.sub(r'\n\s*{', ',\n{', array_part)
# 拼接为完整结果
final_result = f'things = [{fixed_array}]'

print(final_result)
# 如果需要直接转为Python对象,可追加以下代码
import json
data = json.loads(f'[{fixed_array}]')

方法3:文本编辑器批量修改(适合少量临时处理)

用VS Code、Sublime Text等编辑器直接操作:

  • 按下Ctrl+H(Mac系统为Cmd+H)调出替换面板,开启正则匹配模式
  • 查找内容输入\n\s*{
  • 替换内容输入,\n{
  • 点击全部替换即可完成

注意:如果你的数组最后一个元素末尾也带了换行,替换后不会出现多余逗号,不影响JSON解析。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 19:06:02