【发布时间】: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,反之亦然。
-
我现在无法更改设计,因为我必须支持向后兼容。我正在寻找的只是一个正则表达式,它将帮助我实现这一目标!