Preskočiť na obsah
100% lokálne

JSONPath extraktor

Extrahujte hodnoty zo vzoru z dokumentu JSON pomocou výrazu JSONPath alebo JSON Pointer.

Vstup
Výstup

JSONPath extraktor

Vložte JSON dokument, napíšte dotaz a tento nástroj vráti iba hodnoty, ktoré sa zhodujú — bez potreby písať skript alebo otvárať REPL, aby ste vyťahli jedno pole z veľkej dátovej štruktúry. Podporuje dva štýly dotazov: výrazy JSONPath ako $.users[*].email a referencie RFC 6901 JSON Pointer ako /users/0/email. Prepínajte medzi nimi pomocou možnosti syntaxe podľa toho, ktorý z nich už máte k dispozícii z dokumentácie API, riadka denníka alebo hlášky o chybe.

Podpora JSONPath pokrýva vzory, ktoré sa ľudia skutočne používajú: bodkový zápis a prístup v zátvorkách ($.user.name alebo $['user name'] pre kľúče s medzerami), zástupný symbol [*] na rozšírenie cez každý prvok poľa alebo každú hodnotu objektu, číselné indexy vrátane záporných indexov počítaných od konca ($.items[-1]) a .. rekurzívny sestup na nájdenie kľúča v ľubovoľnej hĺbke bez ohľadu na to, ako hlboko je vnorený ($..email). Filtrované výrazy a rozsahy rezov nie sú podporované — ak váš dotaz potrebuje podmienenú logiku, najskôr extrahujte nadradené pole a potom ho filtrujem ďalej.

Dve možnosti tvoria výstup. Možnosť "Zoznam riadkov" vypíše každú nájdenú hodnotu na vlastný riadok — reťazce sa vytlačia bez zmeny, objekty a polia sa vytlačia ako kompaktný JSON — čo je vhodné na priame spárovanie s ďalšími nástrojmi na báze riadkov ako sort alebo dedupe. Možnosť "JSON pole" zabalí každú zhodu do jedného JSON poľa, čo je užitočné, keď chcete čistú, analyzovateľnú podmnožinu pôvodného dokumentu. Zapnite možnosť "Zobraziť cestu ku každej zhode", aby sa pred každý výsledok umiestnila vyriešená cesta, čo pomôže, keď by niekoľko rôznych polí mohlo plausibilne vysvetliť danú hodnotu.

Všetko prebieha lokálne vo vašom prehliadači: dokument, ktorý vložíte, a výraz, ktorý napíšete, nikdy nie sú nikde nahraté. Vďaka tomu je bezpečné orientovať sa na skutočné odpovede API, interné exporty konfigurácie alebo výňatky z produkčného denníka. Súčty pod výstupom uvádzajú presne, koľko zhôd bolo nájdených, takže neočakávaný prázdny výsledok sa ľahko rozlíši od dotazu, ktorý tichо nevrátil nič.

Časté otázky

Aký je rozdiel medzi JSONPath a JSON Pointer?
Výrazy JSONPath ako $.users[*].email môžu naraz zhodovať veľa hodnôt pomocou zástupných symbolov a rekurzívneho sestupu. Referencie JSON Pointer ako /users/0/email sa vždy vzťahujú na najviac jednu hodnotu — je to jednoduchší, doslovnejší schéma adresovania, bežný v JSON Schema a HTTP PATCH dátach.
Ktoré vlastnosti JSONPath sú podporované?
Bodkový zápis a prístup v zátvorkách, zástupný symbol [*], číselné indexy polí (vrátane záporných) a .. rekurzívny sestup pre kľúč v ľubovoľnej hĺbke. Filtrované výrazy ako [?(@.price<10)] a rozsahy rezov ako [0:2] nie sú podporované.
Čo sa stane, ak môj výraz nezodpovedá nič?
Dostanete prázdny výsledok a súčet 0 zhôd — toto sa nepovažuje za chybu. Chyba sa zobrazí iba pre neplatný vstup JSON alebo zle sformovaný výraz.
Môžem vidieť, kde každá hodnota pochádza?
Zapnite možnosť "Zobraziť cestu ku každej zhode" a každý výsledok bude mať na začiatku presnú cestu, v ktorej bol nájdený, v rovnakej syntaxi ako dotaz — cesty JSONPath ako $.users[0].email alebo pôvodný ukazovateľ pre dotazy JSON Pointer.
Je môj JSON dokument nikde nahraný?
Nie. Analýza a spracovanie dotazov prebiehajú úplne vo vašom prehliadači — dokument a výraz nikdy neopustia vaše zariadenie.