json - 如何使用jq解析一个json对象数组

标签 json parsing jq

我需要解析一个包含大量数组的 Json 文件。

这是json源:

{
"iabVersion": "IAB_V2",
"categories": [{
    "categories": [{
        "categories": [{
            "id": "1.1.1",
            "name": "Commercial Trucks"
        },
        {
            "id": "1.1.2",
            "name": "Convertible"
        },
        {
            "id": "1.1.3",
            "name": "Coupe"
        },
        {
            "id": "1.1.4",
            "name": "Crossover"
        },
        {
            "id": "1.1.5",
            "name": "Hatchback"
        },
        {
            "id": "1.1.6",
            "name": "Microcar"
        },
        {
            "id": "1.1.7",
            "name": "Minivan"
        },
        {
            "id": "1.1.8",
            "name": "Off-Road Vehicles"
        },
        {
            "id": "1.1.9",
            "name": "Pickup Trucks"
        },
        {
            "id": "1.1.10",
            "name": "Sedan"
        },
        {
            "id": "1.1.11",
            "name": "Station Wagon"
        },
        {
            "id": "1.1.12",
            "name": "SUV"
        },
        {
            "id": "1.1.13",
            "name": "Van"
        }],
        "id": "1.1",
        "name": "Auto Body Styles"
    }
  }
}

这是需要的 json:

{
"id": "1.1.1",
"name": "Commercial Trucks"
}
{
"id": "1.1.2",
"name": "Convertible"
}

如何通过 jq 解析它?

10 倍:)

最佳答案

假设JSON输入已经修正,下面的jq过滤器似乎满足要求,比如它们是:

.categories[].categories[].categories[]

这会产生一个 JSON 对象流,开始:

{
  "id": "1.1.1",
  "name": "Commercial Trucks"
}
{
  "id": "1.1.2",
  "name": "Convertible"
}

关于json - 如何使用jq解析一个json对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50252063/

相关文章:

javascript - http服务器端node.js数据

c# - MVC JsonNetResult - 序列化 List<ListItem> 时为 "dataloss"

android - 通过 httpget 发送 cookie 值但没有得到所需的响应

c++ - 如何加速包含图形数据的文本文件的 io/解析

c++ - 在没有附加库的情况下在标准 C/C++ 中解析 XML

json - jq - 如何测试 JSON 响应中特定值的出现

sql - 使用jq创建SQL INSERT语句将多级JSON数组导入RDMS

mysql - mysql 字段中 json 的正则表达式

java - 使用 poi xssf 和 sax 解析器解析 xlsx 文件的一部分

jq - 通过存在嵌套数组值来过滤jq中的对象