כאשר נעשה שימוש בפקודות מאקרו גילוי ברמה נמוכה בעיבוד מקדים של JSONPath ו הערכים שלהם נפתרו, הכללים הבאים של בריחה מיוחדים תווים מוחלים:
לדוגמה:
JSONPath | ערך מאקרו LD | לאחר החלפה |
---|---|---|
$.[?(@.value == "{#MACRO}")] | "ערך" מיוחד | $.[?(@.value == "מיוחד \"ערך\"") ] |
c:\temp | $.[?(@.value == "c:\\temp")] | |
a\\b | $.[?(@.value == "a\\\\)] |
כאשר משתמשים בביטוי המאקרו שעשוי לכלול תווים מיוחדים יש לרשום במירכאות כפולות:
JSONPath | ערך מאקרו LLD | לאחר החלפה | תוצאה |
---|---|---|---|
$.[?(@.value == "{#MACRO}")] | "ערך" מיוחד | $.[?(@.value == "מיוחד \"ערך\"") ] | אישור |
$.[?(@.value == {#MACRO})] | $.[?(@.value == מיוחד \"value\")] | Bad JSONPath ביטוי |
בשימוש בנתיב המאקרו שעשוי לכלול תווים מיוחדים צריך להיות מוקף בסוגריים מרובעים ו מרכאות כפולות:
JSONPath | ערך מאקרו LD | לאחר החלפה | תוצאה |
---|---|---|---|
$.["{#MACRO}"].value | c:\temp | $.["c:\\temp"].value | אישור |
$.{#MACRO}.value | $.c:\\temp.value | ביטוי JSONPath רע |