Json Jq:递归删除与给定模式匹配的所有键

Json Jq:递归删除与给定模式匹配的所有键,json,recursion,key,jq,tree-traversal,Json,Recursion,Key,Jq,Tree Traversal,如何递归删除与给定模式匹配的所有键 我有以下jq配置,但它似乎不起作用: walk( if (type == "object" and (.[] | test('.*'))) then del(.) else . end) 删除与模式(比如模式)匹配的所有键的一种健壮方法(针对不同的jq版本)是使用以下习惯用法: with_entries(select( .key | test(PATTERN) | not)) 将其插入walk/1将产生: walk(if type == "object"

如何递归删除与给定模式匹配的所有键

我有以下jq配置,但它似乎不起作用:

walk( if (type == "object" and (.[] | test('.*'))) then del(.) else . end)
删除与模式(比如模式)匹配的所有键的一种健壮方法(针对不同的jq版本)是使用以下习惯用法:

with_entries(select( .key | test(PATTERN) | not))
将其插入
walk/1
将产生:

walk(if type == "object" then with_entries(select(.key | test(PATTERN) | not)) else . end)