정규식을 사용하여 두 패턴 사이의 JSON 코드를 최소화했습니다.

정규식을 사용하여 두 패턴 사이의 JSON 코드를 최소화했습니다.

예를 들어 파일을 살펴보겠습니다.

                        "test": [
                           {
                           }
                        ],
                        "test": [
                           {
                              "name":"bob",
                              "age":21
                           }
                        ]

정규 표현식이 코드를 다음과 같이 최소화하는 방법이 있습니까?

                        "test": [{}],
                        "test": [{"name":"bob","age":21}]

답변1

두 키가 test실제로 고유하고(그렇지 않으면 JSON 파서로 구문 분석할 때 두 번째 키가 test첫 번째 키를 재정의함 test) 문서가 잘 구성된 JSON 문서라고 가정하고 jq -c이를 사용하여 압축 버전을 생성합니다.

여기에서는 고유하도록 키 이름을 변경하고 JSON 조각을 익명 개체에 캡슐화했습니다.

$ cat file.json
{
  "test1": [
    {}
  ],
  "test2": [
    {
      "name": "bob",
      "age": 21
    }
  ]
}

$ jq -c . file.json
{"test1":[{}],"test2":[{"name":"bob","age":21}]}

.명령줄의 는 jq내용을 수정하지 않고 문서를 통과시키는 필터입니다.

관련 정보