Omnikit
ProgramowaniePlikiFinanseWszystkie narzędzia
Ctrl K
Narzędzia dla programistówNarzędzia do plikówKalkulatory finansoweWszystkie narzędzia
Strona głównaNarzędzia dla programistówTester JSONPath
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

Tester JSONPath

programowanie

Uruchamiaj zapytania JSONPath zgodne z RFC 9535 na wklejonym JSON i zobacz każde dopasowanie wyróżnione

Działa w przeglądarce. Wpisane dane nie są nigdzie wysyłane.

JSONPath wybiera wartości z JSON za pomocą krótkiego wyrażenia. $.store.book[*].author zwraca wszystkich autorów, $..price wszystkie ceny na dowolnej głębokości, a $..book[[email protected] < 10] tylko książki tańsze niż 10. Tester jest zgodny z RFC 9535, standardem z 2024 roku, i wyróżnia każde dopasowanie w sformatowanym JSON.

Ta strona została przetłumaczona maszynowo z angielskiego oryginału. Tłumaczenie nie zostało jeszcze sprawdzone przez człowieka, dlatego wiążąca jest wersja angielska. Przeczytaj angielski oryginał

Dalej:
  • JMESPath Tester Run JMESPath queries on pasted JSON, as the AWS and Azure CLI --query does
  • Formater i walidator JSON Formatowanie, walidacja, minifikacja i sortowanie JSON z dokładną pozycją błędu

Jak przetestować wyrażenie JSONPath

1

Wklej JSON do panelu JSON albo kliknij Wypróbuj przykład.

2

Wpisz zapytanie w polu JSONPath albo wybierz je z listy Przykłady.

3

Zobacz dopasowania zaznaczone na karcie Wyróżnione albo otwórz Wyniki, aby zobaczyć każdą ścieżkę i wartość.

4

Kliknij Kopiuj wartości, aby otrzymać dopasowania jako tablicę JSON, albo Kopiuj ścieżki.

Tester JSONPath

Tester JSONPath uruchamia zapytanie na wklejonym JSON i pokazuje wynik na trzy sposoby: listę pasujących wartości, znormalizowaną ścieżkę do każdego dopasowania oraz wyróżnienie dopasowań w sformatowanym dokumencie. Wynik aktualizuje się podczas pisania, więc wyrażenie można budować krok po kroku i widzieć, gdzie zawodzi.

Silnik implementuje RFC 9535, standard JSONPath opublikowany przez IETF w 2024 roku. Obsługuje korzeń $, dostęp do dzieci przez kropkę i nawiasy, operator rekurencyjnego zejścia .., symbole wieloznaczne, indeksy tablic, także ujemne, slice'y takie jak [1:5:2] i [::-1] oraz wyrażenia filtrujące z ==, !=, <, <=, >, >=, &&, || i !. Dostępne jest pięć standardowych funkcji: length(), count(), value(), match() i search(), przy czym dwie ostatnie przyjmują wyrażenia regularne w formie I-Regexp. Zapytania łamiące reguły typów standardu, na przykład porównanie zapytania, które może zwrócić wiele węzłów, są odrzucane z komunikatem wyjaśniającym przyczynę.

Wiele starszych bibliotek, w tym oryginalny JSONPath z 2007 roku i Jayway dla Javy, różni się od standardu w drobiazgach: niektóre wymagają nawiasów wokół filtrów, jak w [?(@.price < 10)], co tutaj nadal działa; inne pozwalają na wyrażenia skryptowe lub dodatkowe funkcje, których RFC 9535 nie przewiduje. Gdy zapytanie z dokumentacji biblioteki zostanie odrzucone, komunikat zwykle wskazuje różnicę.

Niepoprawny JSON jest zgłaszany z wierszem i kolumną pierwszego problemu. Liczby są odczytywane jako liczby JavaScript, więc liczby całkowite większe niż 2^53 tracą precyzję, a powtórzony klucz zachowuje ostatnią wartość.

Czego narzędzie nie robi: składni JMESPath ani jq, edycji JSON ani pobierania adresu URL. Wszystko działa w przeglądarce. Powiązane narzędzia: JSON Formatter, JSON Diff, JSON to TypeScript.

Najczęściej zadawane pytania

Jak przefiltrować tablicę JSON według wartości w JSONPath?

Należy użyć selektora filtru: $.items[[email protected] == 'active'] zachowuje elementy, których status to active. Znak @ oznacza kolejno każdy element. Warunki łączy się przez && i ||, liczby porównuje przez < i >, a samo [email protected] zachowuje elementy, które w ogóle mają pole email.

Czym różni się . od .. w JSONPath?

Pojedyncza kropka bierze dziecko bieżącego węzła, więc $.store.book czyta po jednym poziomie. Dwie kropki szukają na każdej głębokości, więc $..price znajduje każde pole price w całym dokumencie, także w tablicach. Rekurencyjne zejście jest wygodne, ale przy dużych odpowiedziach może dopasować więcej, niż zamierzano.

Z jakim standardem JSONPath jest zgodny ten tester?

Z RFC 9535, opublikowanym przez IETF w lutym 2024 roku, pierwszym formalnym standardem JSONPath. Zapytania pisane dla starszych bibliotek zwykle działają, także filtry w ?( ), ale wyrażenia skryptowe i funkcje specyficzne dla bibliotek nie należą do standardu i są odrzucane z wyjaśnieniem.

Jak pobrać ostatni element tablicy w JSONPath?

Indeksem ujemnym: $.items[-1] to ostatni element, a $.items[-2] przedostatni. Działa też slice z ujemnym początkiem, więc $.items[-3:] zwraca trzy ostatnie. Indeksy poza końcem po prostu nic nie zwracają zamiast błędu.

Czym jest znormalizowana ścieżka?

Znormalizowana ścieżka to jedno dokładne położenie dopasowania, zapisane w stałej formie zdefiniowanej przez RFC 9535, na przykład $['store']['book'][0]['title']. Każdy wynik pokazuje swoją znormalizowaną ścieżkę, co przydaje się do wskazania wartości w zgłoszeniu błędu lub w asercji testu.

Czy w filtrze JSONPath można używać wyrażeń regularnych?

Tak, przez match() i search(). match(@.code, 'A[0-9]+') wymaga, by cały ciąg pasował do wzorca, a search(@.name, 'smith') znajduje go w dowolnym miejscu. Wzorce korzystają z I-Regexp, przenośnego podzbioru wyrażeń regularnych, więc skróty takie jak \d i asercje wyprzedzające nie są akceptowane.

Nadal coś nie działa? Zapytaj o narzędzie Tester JSONPath a odpowiedzieć może każdy, kto zna odpowiedź. Konto nie jest potrzebne.

Powiązane narzędzia

Wszystkie narzędzia dla programistów
Walidator package.jsonSprawdź package.json tak, jak czyta go npm: nazwa, wersja, licencja, zależności i składniaSprawdzanie title i meta descriptionDługość tytułu i meta opisu w znakach i pikselach oraz miejsce, w którym Google je ucinaTestowe numery kart kredytowychNumery kart sandbox ze Stripe i Razorpay z datą ważności i CVV oraz walidator LuhnaTester wyrażeń regularnychTestowanie wyrażeń regularnych JavaScript z podświetlaniem na żywo i objaśnieniem prostym językiemPorównywarka tekstówPorównanie dwóch tekstów obok siebie z każdym dodanym i usuniętym wierszemPorównywanie JSONPorównaj dwa dokumenty JSON i zobacz każdą dodaną, usuniętą i zmienioną wartośćPodgląd Open GraphWklej stronę i zobacz kartę udostępniania dla Facebooka, LinkedIn, X, WhatsApp i SlackaGęstość słów kluczowych i czytelnośćLiczba słów i fraz, gęstość, czas czytania i wskaźnik czytelności Flescha
Czy to narzędzie było pomocne?
Omnikit

Małe zadania wykonywane w przeglądarce. Bezpłatnie, szybko i prywatnie. Pliki nigdy nie są przesyłane.

Pliki

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

Programowanie

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

Finanse

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
PoradnikiPytaniaO serwisieJak sprawdzamyBiblioteka prawa (beta)PrywatnośćRegulaminUjawnieniaKontaktMore: Exam practice (UGC NET Paper 1)Działa w przeglądarce. Nic nie jest przesyłane. © 2026 Omnikit (theomnikit.com)