정규 표현식을 사용하여 두 패턴 사이의 JSON 코드 최소화

정규 표현식을 사용하여 두 패턴 사이의 JSON 코드 최소화

파일을 예로 들어보겠습니다.

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

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

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

답변1

두 키가 실제로 고유하고(그렇지 않으면 JSON 구문 분석기를 사용하여 구문 분석할 때 test두 번째 키가 test첫 번째 키를 덮어씀) 문서가 올바른 형식의 JSON 문서라고 가정하면 압축 버전이 생성됩니다.testjq -c

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

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

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

.명령줄에는 jq내용을 수정하지 않고 문서를 전달하는 필터가 있습니다.

관련 정보