다음의 jq
명령 (Windows)은 모든 "텍스트"속성을 하나의 문자열로 묶어서 로터리 방식으로 공백을 하나의 공백으로 대체합니다. 거의 정확합니다. 정말로 원하는 것은 "텍스트"의 선행 또는 후행 공백을 먼저 바꾸고 모든 "텍스트"속성을 연결하는 것입니다. 차이점은 임베디드 (비 선행, 비 후행) 공백을 제거하면 안된다는 것입니다. 어떻게 할 수 있습니까?jq : 배열을 묶고 공백을 제거하는 방법
def trim: sub("^ *";"") | sub(" *$";"");
또는 당신은 간단하게 사용할 수 있습니다 :
jq ".segments[].words | map(.text?) | join(\",\") | gsub(\"[ ]\"; \"\") | gsub(\"[,]\"; \" \")"
"연결"되어 있습니다. – chepner