JSONPathテスター (JSONPath Tester)
JSONデータを入力し、JSONPath式を使って特定のデータを抽出・フィルタリングします。
JSONPathとは
JSONPathは、XMLに対するXPathのような、JSONデータのためのクエリ言語です。
複雑なJSONデータから、条件に合う特定の値だけを簡単に抜き出すことができます。
JSONPathクイックガイド
基本構文
$ |
ルート(一番上の階層) |
. または [] |
子要素の移動 |
.. |
再帰検索(深い階層も含めて探す) |
* |
ワイルドカード(全ての要素) |
@ |
現在のノード(フィルタ条件内で使用) |
フィルタの書き方
[?(条件式)] の形式で、条件に合うものだけを抽出できます。
[?(@.price < 10)] |
price が 10 未満 |
[?(@.isbn)] |
isbn を持っているもの |
実践例(サンプルデータでの使用例)
上の「サンプル」ボタンを押した状態で試してみてください。
| 目的 | JSONPath式 | 解説 |
|---|---|---|
| 全ての著者を取得 | $.store.book[*].author |
store内のbook全てのauthorを取り出します。 |
| 全ての価格を取得 | $..price |
再帰検索(..)を使って、階層に関係なく全てのpriceを取得します(自転車も本も含む)。 |
| 3冊目の本を取得 | $.store.book[2] |
配列は0から始まるので、[2]は3番目の要素です。 |
| 最後の本を取得 | $.store.book[(@.length-1)] |
式の計算を使って最後の要素を指定します。 |
| 10ドルより安い本 | $.store.book[?(@.price < 10)] |
フィルタを使って条件に合うオブジェクトのみ抽出します。 |