【发布时间】:2022-09-22 22:02:49
【问题描述】:
我有一个大的 json 文件,其中包含要在每个值中修改的文本。如果我们看第一个条目,它看起来像:
$ cat description6fr.json | jq \'.[0].fr\'
Something\\nSomethings\\n\\nSomething\\n\\nSomething
如何在第一次之前削减所有内容\\n\\n?我确实用 sed 和 awk 尝试了很多东西,但欢迎提供帮助。谢谢!
我有一个大的 json 文件,其中包含要在每个值中修改的文本。如果我们看第一个条目,它看起来像:
$ cat description6fr.json | jq \'.[0].fr\'
Something\\nSomethings\\n\\nSomething\\n\\nSomething
如何在第一次之前削减所有内容\\n\\n?我确实用 sed 和 awk 尝试了很多东西,但欢迎提供帮助。谢谢!
您可以使用jq 到split() 的字符串:
jq '.[0].fr | split("\n\n") | first' description6fr.json
"Something\nSomethings"
【讨论】:
您可以使用 index 找到匹配项,然后对其进行切片:
jq '.[0].fr | .[index("\n\n") + 2:]' description6fr.json
【讨论】: