【问题标题】:Append double quotes in nested json string - Java在嵌套的 json 字符串中附加双引号 - Java
【发布时间】:2019-03-13 07:08:32
【问题描述】:

我有一个嵌套的 json 字符串,如下所示,我需要为每个键和值附加双引号

{messageFilters:[{filterCriteria:[{paramNameAndVals:{},values:[abc[0-9]],context:Request,name:Destination-Host,operator:abc}],filterActions:[{paramNameAndVals: {放 名称:sdf,值到 Hash:as},context:Context,name:Stick-To-Pool}],name:MF}],name:fg1,subGroups:[],advancedView:false}

我想要下面的输出,

{"messageFilters":[{"filterCriteria":[{"paramNameAndVals":{},"values":["abc[0-9]"],"context":"Request","name": "Destination-Host","operator":"abc"}],"filterActions":[{"paramNameAndVals":{"Set 名称":"sdf","值到 Hash":"as"},"context":"Context","name":"Stick-To-Pool"}],"name":"MF"}],"name":"fg1","subGroups ":[],"advancedView":false}

我尝试了各种正则表达式模式,但一切都是徒劳的。有人可以帮忙吗

【问题讨论】:

  • 你是如何创建你的 json 的?
  • Json 是通过 CDL.toString() 方法创建的。上面的 json 实际上是一个内部类,我正在尝试导入具有其他列的 CSV 文件,这是列值之一,CDL.toString() 将整个值作为 json 字符串返回。
  • CDL 到底是什么?
  • org.json.CDL 是包,它提供了各种静态方法将 CSV 转换为 jsonArray,反之亦然。
  • 我现在无法更改设计,因为我必须支持向后兼容。我正在寻找的只是一个正则表达式,它将帮助我实现这一目标!

标签: java json regex


【解决方案1】:

您的问题的第一个示例不是有效的 json,请尝试将您的无效 json 转换为字符串。 请检查此链接以获取更多信息 How to convert any Object to String?

【讨论】:

  • 那个json是通过CDL.toString()方法生成的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-11-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-18
  • 2012-09-27
  • 2021-11-16
相关资源
最近更新 更多