/ や ~ を含む項目名と、空の項目名
RFC 6901 に載っている例のような、a/b・m~n・空の名前を持つ JSON です。~1 と ~0 のエスケープ、空の名前を「/」で指す書き方を確かめられます。
入力
JSON
{"a/b":1,"m~n":8,"":0}取り出す場所(JSON Pointer。1 行に 1 つ)
/a~1b /m~0n /
結果
エラー 0 件・警告 0 件・情報 0 件
指摘(エラー・警告・情報)
指摘はありません。
| 指定した場所 | 3 個 |
|---|---|
| 取り出せた | 3 個 |
| 取り出せなかった | 0 個 |
取り出した値
| 場所(JSON Pointer) | 型 | 取り出した値 |
|---|---|---|
| /a~1b | 数値 | 1 |
| /m~0n | 数値 | 8 |
| / | 数値 | 0 |
検算(この結果になる理由)
/a~1b は ~1 を / に直して項目名 a/b の値 1、/m~0n は ~0 を ~ に直して m~n の値 8、/ は空の名前の値 0 です(RFC 6901 3 節・4 節)。3 つとも数値で、エラーはありません。
判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。
このツールの制約
- # で始まる URI フラグメント形式(RFC 6901 6 節)は扱いません。# を除いた形で書いてください。
- 空の Pointer(JSON 全体)は、空の行が無視されるため指定できません。
- ワイルドカードや配列をまたぐ検索(JSONPath のような書き方)はできません。1 つの Pointer は 1 つの場所を指します。
- 数値は元の書き方のまま出力します。値を計算や変換はしません。
ご利用にあたって
- 取り出した値は貼り付けた JSON の中身そのものです。共有する前に個人情報が含まれないか確認してください。
- 大きな JSON はお使いの端末の性能によって処理に時間がかかることがあります。