← ツール

JSONPathテスター

JSONを貼り付けてJSONPath式を書くと、何が選択されるかがわかります。

プライベート:ファイルがデバイスの外に出ることはありません。

結果

JSONPathチートシート
書き方取得できるもの
$ドキュメント全体(ルート)
.name ['name']名前でフィールドを指定(スペースや記号を含む名前は引用符で囲む)
[0] [-1]リストの要素を位置で指定(先頭から、または末尾から)
[0:3] [::2] [::-1]スライス:start:end:step(endは含まない)
* [*]すべてのフィールドまたは要素
..name ..*すべての階層を検索
[0,2] ['a','b']複数をまとめて指定
[?@.price < 10]フィルター:条件が真になる要素(@ は現在の要素)
== != < <= > >=数値、文字列、true、false、null を比較
&& || ! ( )AND、OR、NOT、グループ化
[?@.isbn]そのフィールドを持つ要素
length(@.tags)文字列、リスト、オブジェクトの長さ
count(@.*)クエリが見つけたノードの数
match(@.id, 'A-[0-9]+')文字列全体が正規表現に一致
search(@.name, 'smith')文字列のどこかに一致する部分がある
value(@..price)クエリが見つけた単一の値

このツールはJSONPathの標準規格(RFC 9535)に準拠し、公式テストスイートに合格しています。古いツールの (@.length-1) や =~ のようなスクリプト式は標準に含まれません。エラーメッセージで標準的な書き方を案内します。

結果は入力に合わせて更新されます。大きな数値も全桁そのまま。すべてお使いのデバイス上で処理され、貼り付けた内容がアップロードされることはありません。

使い方

  1. ファイルを選びます。
  2. 必要に応じて設定を調整します。
  3. 結果をダウンロード。BroAllDoneで別のデバイスに送ることもできます。

よくある質問

JSONPathとは?

JSONから値を取り出すための簡潔な書き方で、たとえば $.store.book[0].title のように書きます。$ はドキュメント全体、ドットや [ ] でフィールドやリストの中に入り、.. ですべての階層を検索します。多くのAPIやデータベース、kubectl や Postman などのツールで使われています。

JSONPathで要素を絞り込むには?

? と条件を使います。@ は現在の要素です。$..book[?@.price < 10] で10より安い本が取得できます。条件は && と || で組み合わせ、否定には ! を使います。

このツールはどのJSONPath構文を使っている?

公式の標準規格であるRFC 9535に準拠し、標準の適合テストスイートにも合格しています。フィルター、スライス、関数 length()、count()、match()、search()、value()、正規化パスにも対応しています。

ほかのツールで使っていた式が動かないのはなぜ?

古いツールには (@.length-1)、=~、in など、標準にない独自の機能がありました。エラーメッセージで標準的な書き方を案内します。たとえば最後の要素には [-1]、正規表現には match() を使います。

一致した各要素のパスを取得するには?

「表示」で「パス」または「パスと値」を選んでください。パスは正規化形式($['store']['book'][0])またはドット記法($.store.book[0])で表示できます。

JSONはアップロードされる?

いいえ。すべてブラウザ内で処理されるので、APIのレスポンス、設定ファイル、機密データも安心してテストできます。大きな数値も全桁そのまま保持されます。

ほかの無料ツール