当在 JSONPath 预处理中使用低级别自动发现(LLD)宏,并解析其值时,将应用以下转义特殊字符的规则:
例如:
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\")] | 错误的 JSONPath 表达式 |
在路径中使用可能包含特殊字符的宏时,应将其同时用方括号 和 双引号括起:
JSONPath | LLD 宏值 | 替换后结果 | 结果 |
---|---|---|---|
$.["{#MACRO}"].value | c:\temp | $.["c:\\temp"].value | OK |
$.{#MACRO}.value | $.c:\\temp.value | 错误的 JSONPath 表达式 |