Ga naar inhoud
100% lokaal

jq-filterbouwer

Zet een JSON-document om in een werkend jq-filter, met live voorbeeld op uw eigen data.

Invoer
Uitvoer

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.

FAQ

Draait dit een echte jq-binary?
Nee. Het hulpmiddel implementeert een praktische subset van de jq-padsyntax en -operaties in JavaScript, dus hetzelfde filter dat u hier ziet kan aanpassing nodig hebben voor randgevallen die een volledige jq-installatie wel afhandelt.
Waarom heeft Filter een pad nodig dat eindigt op []?
Filteren behoudt of verwijdert individuele elementen van een array, dus het pad moet een geïtereerde verzameling benoemen — .users[] in plaats van .users. Het hulpmiddel meldt het als dat niet zo is.
Wat accepteert het veld Voorwaarde?
Een veldnaam plus een operator en een waarde, zoals age > 18 of status == "active", of alleen een operator en waarde (> 10) om de elementen van een array direct te vergelijken. Ondersteunde operatoren zijn ==, !=, >, >=, <, <= en contains.
Waarom toont Aggregate voor sommige paden alleen een aantal?
Som, minimum en maximum hebben alleen betekenis bij een array van getallen. Bevat de array objecten — bijvoorbeeld een lijst met gebruikers — dan krijgt u nog steeds een aantal, optioneel eerst versmald met een voorwaarde.
Wordt mijn JSON ergens geüpload?
Nee. Parseren, padherkenning en filteren gebeuren volledig in uw browser — uw document wordt nooit naar een server gestuurd.