Buscar chaves e valores em JSON
Encontre texto literal em chaves e valores primitivos de JSON estrito, copie o caminho ou localize o valor original no navegador.
Espaço de trabalho da ferramenta
Buscar em JSON
Ative JavaScript para buscar localmente no navegador.
Busca chaves decodificadas e valores primitivos. Texto completo significa igualdade textual: 1 difere de 1.0 e 1e0. Espaços, aspas e quebras de linha da consulta são literais. Ignorar maiúsculas usa as minúsculas do JavaScript sem remover acentos nem normalizar Unicode. Não interpreta regex nem JSONPath.
Entrada: 1.000.000 unidades UTF-16; arquivo: 4.000.000 bytes; consulta: 1.000 unidades; profundidade: 200; nós: 100.000; resultados: 1.000; linhas por página: 50.
Opções de busca
Orçamento de texto: 5.000.000 unidades UTF-16; cada caminho: 10.000; caminhos retidos: 2.000.000. Análise: 1.000.000 unidades de trabalho; índice: 100.000 visitas; busca: 100.000 visitas. Tempo de busca: 15.000 ms; página/navegação: 3.000 ms. Texto e caminhos podem esgotar o orçamento mesmo com tamanho e nós dentro do limite.
O JSON, a consulta e os resultados permanecem nesta aba. Nada é enviado ou salvo.
Carregar exemplo
{
"name": "Ana",
"nickname": "Anabel",
"Ana": "Ana",
"active": true,
"note": null,
"items": [
{ "name": "ANA", "price": 1.0 },
{ "a.b": "banana", "empty": {} }
]
}O exemplo com “Ana” e as opções iniciais encontra $.name, $.nickname e $.Ana. Carregue e pressione Buscar.
Pronto para buscar.
Alguns diagnósticos foram omitidos.
Nenhuma correspondência. Tente outro escopo, modalidade ou sensibilidade a maiúsculas.
Área de transferência indisponível. Selecione e copie este caminho completo.
Busque texto literal com uma ação explícita
Cole JSON estrito ou abra um arquivo .json UTF-8. Insira texto literal e pressione Buscar. As opções iniciais buscam chaves e valores, texto parcial e diferenciam maiúsculas. Espaços, tabs, quebras de linha, aspas, barras inversas e caracteres de regex são dados: a consulta não é aparada, decodificada como JSON nem interpretada como regex, curingas ou JSONPath. A consulta vazia é rejeitada; um espaço é válido.
Chaves e strings são buscadas após decodificar escapes JSON. Os valores pesquisáveis são strings, números, booleanos e null. Objetos e arrays são percorridos sem buscar sua representação serializada; a chave de um contêiner pode corresponder. Índices de arrays e partes do caminho não são chaves pesquisáveis. Raízes primitivas são válidas com caminho $; contêineres vazios produzem sucesso sem correspondências.
Experimente o exemplo compartilhado
{
"name": "Ana",
"nickname": "Anabel",
"Ana": "Ana",
"active": true,
"note": null,
"items": [
{ "name": "ANA", "price": 1.0 },
{ "a.b": "banana", "empty": {} }
]
}
Carregar o exemplo adota Ana e restaura as opções; depois pressione Buscar. As opções iniciais encontram $.name, $.nickname e $.Ana. Texto completo encontra $.name e $.Ana: Ana só encontra Anabel em modo parcial. Parcial sem diferenciar maiúsculas acrescenta $.items[0].name e $.items[1]["a.b"]. Chaves/texto completo encontra apenas $.Ana; valores/texto completo sem diferenciar maiúsculas encontra $.name, $.Ana e $.items[0].name. A correspondência de chave e valor em $.Ana produz uma linha com ambos os indicadores.
Igualdade textual, tipos e escrita numérica
Buscar null encontra null e a string "null"; cada linha mostra seu tipo. Números usam seu lexema original: 1, 1.0, 1e0 e -0 são textos distintos. No exemplo, valores/texto completo com 1 não encontra nada; parcial encontra o preço. Um inteiro como 9007199254740993 é buscado sem arredondamento; o aviso de precisão descreve a aproximação interna do JavaScript. Números fora do intervalo finito aceito são rejeitados.
Ignorar maiúsculas aplica toLowerCase() do JavaScript, independentemente do idioma. Não remove acentos, normaliza Unicode nem realiza case folding completo: ÁRBOL corresponde a árbol, mas arbol não; Straße difere de STRASSE, İ de i, e É de e seguido de U+0301. Caminhos e prévias preservam a escrita original.
Navegue, copie e interprete os limites
Resultados seguem a ordem fonte, uma linha por nó. O botão de caminho seleciona o valor completo no editor original, inclusive quando a chave corresponde. Não altera o JSON. Caminho e linha/coluna ficam visíveis; Voltar ao resultado restaura o foco. Copiar caminho copia o texto completo, com cópia manual se a área de transferência falhar. Prévias abreviadas de chave/valor têm indicadores próprios.
Até 1.000 resultados são retidos, em páginas de 50. Exatamente 1.000 é uma contagem completa se o percurso terminar; a correspondência 1.001 produz “pelo menos 1.001”, com total exato desconhecido. Apenas resultados retidos são paginados. JSON inválido, chaves decodificadas duplicadas como {"a":1,"\u0061":2} ou orçamento rígido esgotado não produzem lista; são diferentes de zero correspondências. JSONC, JSON5, reparação e substituição não são suportados.
Arquivo: 4.000.000 bytes; entrada original: 1.000.000 unidades UTF-16; consulta: 1.000; profundidade de contêineres: 200; nós: 100.000. Texto comparado tem orçamento de 5.000.000 unidades, cada caminho de 10.000 e caminhos retidos de 2.000.000. Podem esgotar antes de tamanho/nós. Busca: 15 segundos; página/navegação: 3 segundos. Um BOM inicial é ignorado com aviso, preservando os intervalos originais na navegação.
Tudo é processado localmente em memória. Arquivo e cópia exigem ações explícitas; dados não são enviados nem salvos em URLs ou armazenamento do navegador. Editar entrada, consulta ou opções, carregar arquivo/exemplo ou limpar remove resultados anteriores. Cancelar preserva entrada e opções. Requer JavaScript e Workers locais. Ferramentas relacionadas abrem normalmente sem transferir seu documento.