jq-filterbouwer
Zet een JSON-document om in een werkend jq-filter, met live voorbeeld op uw eigen data.
jq-filterbouwer
Plak een JSON-document en dit hulpmiddel somt elk veldpad op dat erin voorkomt, in de vertrouwde punt-en-haakjes-syntax van jq — .users[].email, .items[0].price, enzovoort — zodat u niet hoeft te raden naar de structuur van data die u niet zelf hebt geschreven. Kies een van die paden, of typ uw eigen pad, en het hulpmiddel bouwt daaromheen een werkend jq-filter.
De optie Operatie bepaalt welk type filter wordt gebouwd. Select geeft de waarde of waarden van het pad terug, één per regel, precies zoals kale jq een stream afdrukt. Map verpakt diezelfde waarden in één JSON-array met vierkante haken. Filter vereist een pad dat eindigt op [] en een voorwaarde zoals age > 18 of status == "active" — alleen de elementen die voldoen blijven over, met select() als onderliggend mechanisme. Aggregate richt zich op een hele array (zonder afsluitende []) en meldt het aantal elementen, en wanneer elk element een getal is, ook de som, het minimum en het maximum; voeg een voorwaarde toe om alleen de elementen te tellen die daaraan voldoen.
Uitvoer als platte tekst haalt de aanhalingstekens weg bij stringresultaten, net als de -r vlag van jq; compacte uitvoer perst de JSON op één regel in plaats van inspringen met twee spaties. De optie jq-syntaxversie voegt alleen een commentaarregel toe voor jq 1.5, 1.6 of 1.7 — handig als u een pipeline aan een specifieke versie vastpint — zonder dat de berekende preview verandert, want de subset van jq die dit hulpmiddel implementeert gedraagt zich in alle drie identiek. Voorwaarden ondersteunen ==, !=, >, >=, <, <= en contains, en vergelijken met getallen, strings, booleans, null of tekst tussen aanhalingstekens.
Alles draait lokaal in uw browser: de JSON die u plakt, het filter dat u bouwt en het resultaat dat eruit komt verlaten nooit uw apparaat. Zodra het filter klopt, kopieert u het resultaat, downloadt u het als .txt-bestand, of stuurt u de uitvoer terug naar de invoer om verder te verfijnen.