1 Избегавање специјалних знакова из вредности LLD макроа у JSONPath-у

Када се макрои за откривање ниског нивоа користе у JSONPath претходној обради и њихове вредности су решене, следећа правила бекства посебна знакови се примењују:

  • узимају се у обзир само обрнута коса црта (\) и двоструки наводник ("). за бекство;
  • ако решена вредност макроа садржи ове знакове, сваки од њих је приказан повратном косом цртом;
  • ако су већ побегли са обрнутом косом цртом, не узима се у обзир као излазни и и обрнута коса црта и следећи специјални знакови се још једном избегавају.

на пример:

JSONPath LLD macro value After substitution
$.[?(@.value == "{#MACRO}")] special "value" $.[?(@.value == "special \"value\"")]
c:\temp $.[?(@.value == "c:\\temp")]
a\\b $.[?(@.value == "a\\\\b")]

Када се користи у изразу, макро који може имати посебне знакове треба ставити у двоструке наводнике:

JSONPath LLD macro value After substitution Result
$.[?(@.value == "{#MACRO}")] special "value" $.[?(@.value == "special \"value\"")] OK
$.[?(@.value == {#MACRO})] $.[?(@.value == special \"value\")] Bad JSONPath expression

Када се користи у путањи, макро који може имати посебне знакове треба бити стављен у угласте заграде и двоструки наводници:

JSONPath LLD macro value After substitution Result
$.["{#MACRO}"].value c:\temp $.["c:\\temp"].value OK
$.{#MACRO}.value $.c:\\temp.value Bad JSONPath expression