[comment]: # translation:outdated

[comment]: # ({c3bce151-c19f94bc})
# בריחה של תווים מיוחדים מערכי מאקרו LLD ב-JSONPath

כאשר נעשה שימוש בפקודות מאקרו גילוי ברמה נמוכה בעיבוד מקדים של JSONPath ו
הערכים שלהם נפתרו, הכללים הבאים של בריחה מיוחדים
תווים מוחלים:

- רק תווי קו נטוי אחורי (\\) ומירכאות כפולות ("") נחשבים
     לבריחה;
- אם ערך המאקרו שנפתר מכיל את התווים האלה, כל אחד מהם
     נמלט עם קו נטוי לאחור;
- אם הם כבר נמלטו עם נטוי אחורי, זה לא נחשב
     כמו בריחה והן הספיישל האחורי והספיישל הבא
     הדמויות נמלטו שוב.

לדוגמה:

|JSONPath|ערך מאקרו LD|לאחר החלפה|
|--------|---------------------|----------------|
|$.\[?(@.value == "{\#MACRO}")\]|"ערך" מיוחד|$.\[?(@.value == "מיוחד \\"ערך\\"") \]|
|^|c:\\temp|$.\[?(@.value == "c:\\\\temp")\]|
|^|a\\\\b|$.\[?(@.value == "a\\\\\\\\\b")\]|

כאשר משתמשים בביטוי המאקרו שעשוי לכלול תווים מיוחדים
יש לרשום במירכאות כפולות:

|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 רע**|

[comment]: # ({/c3bce151-c19f94bc})
