JSONPath Tester
Ejecuta consultas JSONPath RFC 9535 sobre JSON y ve cada coincidencia
Acerca de JSONPath Tester
Evalúa una expresión JSONPath RFC 9535 sobre tu JSON mientras escribes, en tu navegador, y lista cada valor encontrado con su ruta normalizada y el número de coincidencias. Los ejemplos de un clic sobre una librería de muestra cubren comodines, slices, filtros y las funciones length, count, match, search y value. La sintaxis antigua de Goessner o Jayway, como [(@.length-1)] o =~, se rechaza con una pista sobre su equivalente en RFC 9535.
Categoría: Texto.
Preguntas frecuentes
¿Qué es RFC 9535?
▾
RFC 9535, publicado por el IETF en febrero de 2024, es el primer estándar formal de JSONPath. Define la gramática, cómo los filtros comparan valores, cinco funciones integradas y el formato de ruta normalizada, aspectos que cada implementación anterior resolvía a su manera.
¿En qué se diferencia de JSONPath de Goessner o Jayway?
▾
No admite expresiones de script como [(@.length-1)], el operador =~, in y nin, ni funciones de ruta como .length(); usa [-1], match(), search() o length() dentro de un filtro. Los filtros pueden escribirse sin paréntesis, como en [[email protected] < 10], y las comparaciones nunca convierten tipos, así que 1 y "1" son distintos.
¿Por qué mi consulta no devuelve coincidencias en lugar de un error?
▾
Un miembro inexistente, un índice fuera de rango o un filtro que no coincide con nada son válidos y devuelven una lista vacía. Además, .length selecciona un miembro llamado length y no el tamaño de un array, y una expresión regular inválida en match() o search() simplemente no coincide con nada.
¿Qué es una ruta normalizada?
▾
Es la ruta RFC 9535 única de un nodo encontrado, escrita con corchetes y nombres entre comillas simples, como $['store']['book'][0]. Copy paths devuelve una por línea, y cada una puede pegarse de nuevo como consulta para seleccionar exactamente ese nodo.