我有這個 JSON 輸入到 JQjq
{
"names": [{
"name": "John Smith"
},{
"name": "Jane Doe"
},{
"name": "Jackson Longfellow"
}]
}
我想使用 jq 來選擇名稱長度大于 10 個字符的所有專案。這意味著輸出將是:
{
"names": [{
"name": "Jackson Longfellow"
}]
}
length過濾器似乎只計算陣列中的專案。是否有其他內置過濾器可用于此?
uj5u.com熱心網友回復:
通過僅 ing 那些匹配的專案來|=更新陣列names。應用于字串將輸出其長度計數 Unicode 代碼點。selectlength
jq '.names |= map(select(.name | length > 10))'
{
"names": [
{
"name": "Jackson Longfellow"
}
]
}
演示
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/422884.html
標籤:
