Consulta JSONPath
Tire exatamente os dados que você precisa de um JSON longo com uma expressão JSONPath: por exemplo o nome de cada usuário ou só produtos abaixo de 10.
Como consultar JSON com JSONPath
- Cole seu JSON na caixa da esquerda.
- Digite uma expressão JSONPath na caixa «Caminho», sempre começando com $, por exemplo $.users[*].name para pegar o nome de cada usuário.
- O resultado é uma lista dos valores encontrados. Ative «Mostrar onde cada valor foi encontrado» para ver o caminho de cada um.
Perguntas frequentes
$ é o documento inteiro. .name pega um campo, [0] o primeiro item de uma lista, [-1] o último, [*] todos, [1:3] o 2º e o 3º itens, e ..name acha esse campo em qualquer profundidade. Por exemplo: $.users[0].name ou $..price.
Use [?(...)], onde @ é cada item verificado. Por exemplo $.products[?(@.price < 10)] pega os produtos com preço abaixo de 10. Você pode comparar com ==, !=, <, <=, > e >=, e combinar condições com && (e), || (ou) e ! (não). Escreva só [?(@.isbn)] para ficar com os itens que têm esse campo.
Coloque o nome entre colchetes e aspas duplas, por exemplo $["first name"] ou $.users[0]["first-name"].
Um caminho pode achar vários valores, então o resultado é sempre uma lista. Se só um valor bater, a lista tem um item só, e se nada bater é a lista vazia [].
Sim, nos filtros. length(@.name) conta os caracteres de um texto (ou os itens de uma lista), count(@.tags[*]) conta os valores encontrados, value(@..color) dá o único valor encontrado, match(@.name, "^An") verifica se o texto inteiro bate com um padrão e search(@.name, "An") verifica se o texto contém o padrão. Por exemplo: $.users[?(length(@.name) > 3 && match(@.name, "^B"))].
A sintaxe básica de regex: caracteres comuns, ponto (qualquer caractere), [abc] e [a-z], [^abc] (qualquer um menos esses), * + ? e repetições exatas, | (ou), grupos (…), ^ e $ (início e fim do texto), \d \w \s, \b (borda de palavra) e grupos Unicode como \p para letras maiúsculas. Não há lookahead nem lookbehind (?=…) nem referências para trás (\1). Em troca, um padrão sempre roda rápido: nem um mal escrito consegue travar a página. Atenção: na consulta a barra invertida é escrita duas vezes, por exemplo \"\\d+\" para o padrão \d+.
Não. Os números ficam exatamente como estão no JSON, e ao filtrar por um número a comparação é exata até o último dígito.
Não. O JSON é processado no seu próprio aparelho.
É totalmente grátis e não precisa de conta.
Ferramentas relacionadas
JSON para YAMLConverta entre JSON e YAMLJSON para TOMLConverta entre JSON e TOMLJSON para CSVConverta entre JSON e tabelas CSVJSON para XMLConverta JSON em XML indentadoJSON para TypeScriptGere interfaces TypeScript de um JSON de exemploJSON para JSON SchemaGere um JSON Schema a partir de um JSON de exemploValidador de JSON SchemaConfira se dados JSON seguem um JSON SchemaJSON para ZodGere um schema Zod a partir de um JSON de exemploJSON para struct GoGere structs Go a partir de um JSON de exemplo