jq:如何安排数组并删除空格

时间:2017-04-18 14:53:00

标签: concatenation trim jq strip

以下jq命令(Windows)成功连接所有"文本"将属性转换为一个字符串,用一个空格替换任何空格,尽管是以迂回的方式。差不多正确。我真正想要的是首先替换" text"中的任何前导或尾随空格,然后安排所有" text"属性。不同之处在于不得删除嵌入(非前导,非尾随)空格。怎么办呢?

jq ".segments[].words | map(.text?) | join(\",\") | gsub(\"[ ]\"; \"\") | gsub(\"[,]\"; \" \")"

1 个答案:

答案 0 :(得分:1)

考虑:

def trim: sub("^ *";"") | sub(" *$";"");

或者你可以简单地使用:gsub(" ^ \ s | \ s * $&#34 ;;"")

还有其他方法来修剪字符串,但上面的内容应该让你开始。