根据JSON数据的key截取JSON字符串

可处理[{},{}]形式的json数据

  1. 把json转化为字符串
var bbb = JSON.stringify(array)
  1. 用indexof查找key在json字符串中所在的位置
var a = bbb.indexOf('15d91690-0804-4e1d-b7e6-00029f5a9992')
  1. indexof查找“}”的位置
 var b = bbb.indexOf('}', a)
  1. lastIndexOf 查找“{”的位置
 var c = bbb.lastIndexOf('{', a)
  1. 截取单个json的字符串
var d = bbb.slice(c, b + 1)
  1. 转化json字符串
let e = $.parseJSON(d)

至此json字符串的截取已经完成,代码很简单。如果各位老哥,有更好的方法,欢迎提出。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果给定的字符串不是标准的 JSON 格式,而是需要进行截取和处理才能转换成 JSON 串,可以使用字符串操作的方式进行处理。 例如,假设给定的字符串为 `name=Tom&age=18`,需要将其转换成 User 对象的 JSON 串,可以按照以下步骤进行处理: 1. 使用字符串的 split() 方法将字符串按照 "&" 分割成多个子字符串。 2. 针对每个子字符串,再使用 split() 方法将其按照 "=" 分割成两个子字符串,分别表示属性名和属性值。 3. 将属性名和属性值分别赋值给 User 对象的对应属性。 4. 使用 Jackson 库将 User 对象转换成 JSON 串。 下面是一个示例代码: ```java String input = "name=Tom&age=18"; User user = new User(); String[] keyValuePairs = input.split("&"); for (String pair : keyValuePairs) { String[] keyValue = pair.split("="); switch (keyValue[0]) { case "name": user.setName(keyValue[1]); break; case "age": user.setAge(Integer.parseInt(keyValue[1])); break; // 如果有其他属性,可以继续添加 case 语句 default: break; } } ObjectMapper objectMapper = new ObjectMapper(); try { String jsonOutput = objectMapper.writeValueAsString(user); System.out.println(jsonOutput); // 输出: {"name":"Tom","age":18} } catch (JsonProcessingException e) { e.printStackTrace(); } ``` 以上代码中,首先使用 split() 方法将字符串按照 "&" 分割成多个子字符串,然后使用 split() 方法将每个子字符串按照 "=" 分割成属性名和属性值。根据属性名的不同,将属性值赋值给 User 对象的对应属性。最后使用 Jackson 库将 User 对象转换成 JSON 串。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值