Requête JSONPath
Extrayez exactement les données voulues d'un long JSON avec une expression JSONPath : par exemple le nom de chaque utilisateur, ou les produits à moins de 10.
Comment interroger du JSON avec JSONPath
- Collez votre JSON dans la zone de gauche.
- Tapez une expression JSONPath dans la zone « Chemin », toujours en commençant par $, par exemple $.users[*].name pour obtenir le nom de chaque utilisateur.
- Le résultat est une liste des valeurs trouvées. Activez « Afficher où chaque valeur a été trouvée » pour voir le chemin de chacune.
Questions fréquentes
$ représente tout le document. .name prend un champ, [0] le premier élément d'une liste, [-1] le dernier, [*] tous, [1:3] le 2e et le 3e, et ..name trouve ce champ à n'importe quelle profondeur. Par exemple : $.users[0].name ou $..price.
Utilisez [?(...)], où @ est chaque élément examiné. Par exemple $.products[?(@.price < 10)] prend les produits à moins de 10. Vous pouvez comparer avec ==, !=, <, <=, > et >=, et combiner les conditions avec && (et), || (ou) et ! (non). Écrivez simplement [?(@.isbn)] pour garder les éléments qui ont ce champ.
Mettez le nom entre crochets et guillemets doubles, par exemple $["first name"] ou $.users[0]["first-name"].
Un chemin peut trouver plusieurs valeurs, le résultat est donc toujours une liste. Si une seule valeur correspond, la liste a un seul élément, et si rien ne correspond c'est la liste vide [].
Oui, dans les filtres. length(@.name) compte les caractères d'un texte (ou les éléments d'une liste), count(@.tags[*]) compte les valeurs trouvées, value(@..color) donne l'unique valeur trouvée, match(@.name, "^An") vérifie que tout le texte correspond à un motif et search(@.name, "An") vérifie que le texte contient le motif. Par exemple : $.users[?(length(@.name) > 3 && match(@.name, "^B"))].
La syntaxe regex de base : caractères ordinaires, point (n'importe quel caractère), [abc] et [a-z], [^abc] (tout sauf ceux-là), * + ? et répétitions exactes, | (ou), groupes (…), ^ et $ (début et fin du texte), \d \w \s, \b (limite de mot) et classes Unicode comme \p pour les majuscules. Pas d'assertions avant ou arrière (?=…) ni de références arrière (\1). En échange, un motif s'exécute toujours vite : même mal écrit, il ne peut pas figer la page. Attention : dans la requête, l'antislash s'écrit deux fois, par exemple \"\\d+\" pour le motif \d+.
Non. Les nombres restent exactement comme dans le JSON, et un filtre sur un nombre compare exactement jusqu'au dernier chiffre.
Non. Le JSON est traité directement sur votre appareil.
C'est entièrement gratuit, sans compte.
Outils similaires
JSON en YAMLConvertissez entre JSON et YAMLJSON vers TOMLConvertissez entre JSON et TOMLJSON en CSVConvertissez entre JSON et tableaux CSVJSON vers XMLConvertissez du JSON en XML indentéJSON en TypeScriptGénérez des interfaces TypeScript depuis un exemple JSONJSON vers JSON SchemaGénérez un JSON Schema à partir d'un exemple JSONValidateur JSON SchemaVérifiez si des données JSON respectent un JSON SchemaJSON vers ZodGénérez un schéma Zod depuis un exemple JSONJSON vers struct GoGénérez des structs Go depuis un exemple JSON