【问题标题】:splitting json string by accolade and keep the accolade通过荣誉拆分 json 字符串并保持荣誉
【发布时间】:2022-11-21 05:22:54
【问题描述】:

我想用“{”进行拆分并保留“{”。

结果应该是一个数组:

[
"{  \""text\" : \"alinea 1\", \"type\" : \"paragraph\"  }",
"{  \""text\" : \"alinea 2\", \"type\" : \"paragraph\"  }"
]

到目前为止我得到的代码:

("{    \"text\": \"alinea 1\",    \"type\": \"paragraph\"  },  {    \"text\": \"alinea2\",    \"type\": \"paragraph\"  }").split(/([?={?>={]+)/g)

但是输出并不像预期的那样:

我不是正则表达式的英雄......并试图摆弄一下这个:Javascript and regex: split string and keep the separator

【问题讨论】:

  • 按照您想要的方式对事物进行编码比尝试对编码字符串进行后处理要容易得多。
  • 我同意@gog。你从哪里得到这些数据?不能只使用常规 JSON 吗?一种更简单的方法可能是使其成为 JSON。例如JSON.parse("[" + str + "]")
  • 这里明显的问题是:“为什么?”您正在使用 JavaScript 并尝试在不使用可用的本机 JSON 处理的情况下操作 JSON。

标签: javascript json split delimiter


【解决方案1】:

请在使用 JSON.parse 之前修复服务器或包装在 [] 中以获得我期望的你真正想要的

const str = `{    "text": "alinea 1",    "type": "paragraph"  },  {    "text": "alinea2",    "type": "paragraph"  }`
console.log(JSON.parse(`[${str}]`))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 2013-06-08
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-19
    相关资源
    最近更新 更多