Omnikit
DevFichiersFinancesTous les outils
Ctrl K
Outils pour développeursOutils pour fichiersCalculateurs financiersTous les outils
AccueilOutils pour développeursTesteur JSONPath
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

Testeur JSONPath

dev

Exécutez des requêtes JSONPath RFC 9535 sur du JSON collé et voyez chaque correspondance surlignée

Fonctionne dans votre navigateur. Rien de ce que vous saisissez n'est envoyé nulle part.

JSONPath extrait des valeurs d'un JSON avec une expression courte. $.store.book[*].author renvoie tous les auteurs, $..price tous les prix à n'importe quelle profondeur et $..book[[email protected] < 10] seulement les livres à moins de 10. Ce testeur suit la RFC 9535, la norme de 2024, et surligne chaque correspondance dans le JSON formaté.

Cette page a été traduite automatiquement à partir de l'original anglais. Aucune personne n’a encore relu la traduction : c’est la version anglaise qui fait foi. Lire l'original en anglais

Ensuite :
  • JMESPath Tester Run JMESPath queries on pasted JSON, as the AWS and Azure CLI --query does
  • Formateur et validateur JSON Formatez, validez, minifiez et triez du JSON avec la position exacte des erreurs

Comment tester une expression JSONPath

1

Collez le JSON dans le panneau JSON, ou appuyez sur Essayer un exemple.

2

Tapez une requête dans la zone JSONPath, ou choisissez-en une dans Exemples.

3

Voyez les correspondances marquées dans l'onglet Surligné, ou ouvrez Résultats pour chaque chemin et valeur.

4

Appuyez sur Copier les valeurs pour obtenir les correspondances en tableau JSON, ou sur Copier les chemins.

À propos du testeur JSONPath

Ce testeur JSONPath exécute une requête sur le JSON que vous collez et affiche le résultat de trois façons : une liste des valeurs correspondantes, le chemin normalisé de chaque correspondance et le surlignage des correspondances dans le document formaté. Le résultat se met à jour pendant la saisie, ce qui permet de construire une expression pas à pas et de voir où elle se trompe.

Le moteur implémente la RFC 9535, la norme JSONPath publiée par l'IETF en 2024. Il prend en charge la racine $, l'accès aux enfants par point et par crochets, l'opérateur de descente récursive .., les jokers, les indices de tableau y compris négatifs, les slices comme [1:5:2] et [::-1], et les expressions de filtre avec ==, !=, <, <=, >, >=, &&, || et !. Les cinq fonctions standard sont incluses : length(), count(), value(), match() et search(), les deux dernières acceptant des expressions régulières au format I-Regexp. Les requêtes qui enfreignent les règles de types de la norme, comme comparer une requête pouvant renvoyer plusieurs nœuds, sont refusées avec un message qui dit pourquoi.

Beaucoup de bibliothèques anciennes, dont le JSONPath original de 2007 et Jayway pour Java, diffèrent de la norme sur des détails : certaines exigent des parenthèses autour des filtres, comme dans [?(@.price < 10)], ce qui fonctionne toujours ici ; d'autres autorisent des expressions de script ou des fonctions supplémentaires, que la RFC 9535 ne prévoit pas. Si une requête tirée de la documentation d'une bibliothèque est refusée, le message nomme en général la différence.

Un JSON invalide est signalé avec la ligne et la colonne du premier problème. Les nombres sont lus comme des nombres JavaScript : les entiers supérieurs à 2^53 perdent en précision, et une clé répétée garde sa dernière valeur.

Ce qu'il ne fait pas : la syntaxe JMESPath ou jq, la modification du JSON ou le chargement d'une URL. Tout s'exécute dans votre navigateur. Outils liés : JSON Formatter, JSON Diff, JSON to TypeScript.

Questions fréquentes

Comment filtrer un tableau JSON selon une valeur avec JSONPath ?

Utilisez un sélecteur de filtre : $.items[[email protected] == 'active'] garde les éléments dont le status vaut active. Le @ désigne chaque élément tour à tour. Combinez des conditions avec && et ||, comparez des nombres avec < et >, et écrivez [email protected] seul pour garder les éléments qui ont un champ email.

Quelle différence entre . et .. en JSONPath ?

Un point unique prend un enfant du nœud courant, donc $.store.book lit un niveau à la fois. Deux points cherchent à toutes les profondeurs, donc $..price trouve chaque champ price du document, y compris dans les tableaux. La descente récursive est pratique mais peut correspondre à plus que prévu sur de grosses réponses.

Quelle norme JSONPath ce testeur suit-il ?

La RFC 9535, publiée par l'IETF en février 2024, première norme formelle de JSONPath. Les requêtes écrites pour des bibliothèques plus anciennes fonctionnent pour la plupart, y compris les filtres entourés de ?( ), mais les expressions de script et les fonctions propres à une bibliothèque ne font pas partie de la norme et sont refusées avec une explication.

Comment obtenir le dernier élément d'un tableau en JSONPath ?

Utilisez un indice négatif : $.items[-1] est le dernier élément et $.items[-2] l'avant-dernier. Un slice avec un début négatif marche aussi : $.items[-3:] renvoie les trois derniers. Les indices au-delà de la fin ne renvoient simplement rien au lieu d'une erreur.

Qu'est-ce qu'un chemin normalisé ?

Un chemin normalisé est l'emplacement exact et unique d'une correspondance, écrit sous une forme fixe définie par la RFC 9535, comme $['store']['book'][0]['title']. Chaque résultat affiche son chemin normalisé, utile pour désigner une valeur dans un rapport de bogue ou une assertion de test.

Puis-je utiliser des expressions régulières dans un filtre JSONPath ?

Oui, avec match() et search(). match(@.code, 'A[0-9]+') exige que toute la chaîne corresponde au motif, tandis que search(@.name, 'smith') le trouve n'importe où. Les motifs utilisent I-Regexp, un sous-ensemble portable des expressions régulières : les raccourcis comme \d et les assertions avant ne sont pas acceptés.

Toujours bloqué ? Poser une question sur Testeur JSONPath et toute personne qui connaît la réponse peut répondre. Aucun compte nécessaire.

Outils associés

Tous les outils pour développeurs
Validateur de package.jsonVérifiez un package.json comme npm le lit : nom, version, licence, dépendances et syntaxeVérificateur de balise title et meta descriptionLongueur du titre et de la meta description en caractères et en pixels, et où Google les coupeNuméros de carte bancaire de testNuméros de carte sandbox de Stripe et Razorpay avec date d’expiration et CVV, et un vérificateur LuhnTesteur d'expressions régulièresTestez des expressions régulières JavaScript avec surlignage en direct et une explication en langage clairComparateur de textesComparez deux textes côte à côte et voyez chaque ligne ajoutée et suppriméeComparer du JSONComparez deux documents JSON et listez chaque valeur ajoutée, supprimée et modifiéeAperçu Open GraphCollez une page et voyez la carte de partage pour Facebook, LinkedIn, X, WhatsApp et SlackDensité de mots-clés et lisibilitéNombre de mots et d’expressions, densités, temps de lecture et score de lisibilité Flesch
Cet outil vous a-t-il été utile ?
Omnikit

Les petites tâches, faites dans votre navigateur. Gratuit, rapide et privé. Les fichiers ne sont jamais envoyés.

Fichiers

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

Dev

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

Finances

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
GuidesQuestionsÀ proposNos vérificationsBibliothèque juridique (bêta)ConfidentialitéConditionsTransparenceContactMore: Exam practice (UGC NET Paper 1)Fonctionne dans votre navigateur. Rien n'est envoyé. © 2026 Omnikit (theomnikit.com)