使い方
- 左側に JSON を貼り付けるか、サンプルデータを使います。
- 上部に JSONPath 式を入力するか、例の式をクリックします。
- 入力すると右側に一致結果が表示されます。「パスを表示」をクリックすると、各結果の場所を確認できます。
オプションの説明
- $ と @
- $ はルートノード、@ はフィルター内の現在のノードです。例は [?(@.price < 10)] です。
- . と ..
- .name は子を選び、..name はすべての階層から name という名前のノードを探します。
- [*]、[0,1]、[-1:]
- ワイルドカード、複数のインデックス、スライスを使えます。Python のスライスに似ており、負の数は末尾から数えます。
- [?(...)]
- ==、!=、<、<=、>、>=、&&、||、! による比較と論理、[?(@.isbn)] のような存在確認を使えます。
よく使う式
| 式 | 意味 |
|---|---|
$.store.book[*].author |
すべての本の著者 |
$..price |
ドキュメント内のすべての価格 |
$..book[?(@.price < 10)].title |
価格が 10 未満の本のタイトル |
$..book[-1:] |
最後の本 |
$..book[0,1].title |
最初の 2 冊のタイトル |
$..book.length |
本の冊数 |
よくある質問
どの JSONPath 構文に対応していますか?
jsonpath-plus が実装する Goessner 形式に対応します。Jayway(Java)、多くのオンラインツール、API テストソフトで使われる形式ですが、フィルター式など RFC 9535(2024)とは一部異なります。
フィルター式で JavaScript を実行できますか?
いいえ。プロパティアクセス、比較、論理だけを許可する安全なモードで評価し、任意のコードは実行しません。
結果がいつも配列なのはなぜですか?
JSONPath 式は複数のノードに一致する可能性があるため、結果は常にリストです。1 件だけでも 1 要素のリストになります。
JSON はアップロードされますか?
いいえ。解析と検索はブラウザ内で行われます。
プライバシー
このツールはすべてブラウザ内で動作します。ファイルやテキストはお使いの端末上で処理され、当サイトのサーバーにアップロードされることはありません。