JSONPath のプリプロセスでローレベルディスカバリーマクロが使用され、
その値が解決されるとき、以下の特殊文字のエスケープのルールが適用されます。
例:
JSONPath | LLDマクロの値 | 置換後 |
---|---|---|
$.[?(@.value == "{#MACRO}")] | special "value" | $.[?(@.value == "special \"value\"")] |
c:\temp | $.[?(@.value == "c:\\temp")] | |
a\\b | $.[?(@.value == "a\\\\b")] |
特殊文字を含むマクロを式で使用する場合は、二重引用符で囲む必要があります:
JSONPath | LLDマクロの値 | 置換後 | 結果 |
---|---|---|---|
$.[?(@.value == "{#MACRO}")] | special "value" | $.[?(@.value == "special \"value\"")] | OK |
$.[?(@.value == {#MACRO})] | $.[?(@.value == special \"value\")] | Bad JSONPath expression |
特殊文字を含むマクロをパスで使用する場合は、角括弧 と 二重引用符で囲む必要があります:
JSONPath | LLDマクロの値 | 置換後 | 結果 |
---|---|---|---|
$.["{#MACRO}"].value | c:\temp | $.["c:\\temp"].value | OK |
$.{#MACRO}.value | $.c:\\temp.value | Bad JSONPath expression |