JSONPath Tester
Write a query, see exactly what it matches, and find out precisely where a query with no results went wrong.
Input
Colorazione sintattica disattivata.
Matches
Matches appear here.
Funziona interamente nel tuo browser.
Su questo strumento
This implements the part of RFC 9535 that real queries use, and says so rather than claiming the whole specification and failing on an edge case. Names, wildcards, indexes including negative ones, slices with a step, unions inside one bracket, descendant segments and filters are all supported. Filters compare a relative path against a number, a string, true, false or null, combine with and, or and not, and test for a key simply by naming it. What is not supported is named on the page and reported by name when you use it: function extensions such as length, absolute paths inside a filter, and comparisons between two paths. Matching runs over the token stream, so every result carries its own path, its line, and the value exactly as you wrote it.
Come usare
- Paste your JSON into the editor, or load the sample.
- Type a query, or press one of the examples. Results update as soon as you stop typing.
- Select a match to highlight it in the editor, and read the count above to confirm the query did what you meant.
Supported syntax
| $ | The whole document |
| $.store.book | A child by name |
| $['a name'] | A name that has a space or punctuation in it |
| $.store.* | Every child of a value |
| $.book[0], $.book[-1] | An element by position, counting back from the end with a minus |
| $.book[1:4], $.book[::2] | A range of elements, with an optional step |
| $.book[0, 2], $['a', 'b'] | Several selectors at once |
| $..price | The same selector at every depth |
| $.book[?@.price < 10] | Only the values that pass a test |
| $.book[?@.isbn] | Only the values that have a given key |