تهريب وإلغاء تهريب النصوص

هرّب الأحرف الخاصة في السلاسل النصية لـ JSON وJavaScript وJava وPython وXML — وألغِ تهريبها. أداة ضرورية عند التعامل مع السلاسل النصية في لغات البرمجة المختلفة.

الميزات

هروب JSON
هروب JavaScript
هروب Java
هروب Python
هروب XML

طريقة الاستخدام

1. اختر اللغة (JSON، JavaScript، Java، Python، XML).

2. اختر تهريب أو إلغاء تهريب.

3. الصق النص وانسخ النتيجة.

حول هذه الأداة

يجب كتابة الأحرف الخاصة مثل علامات الاقتباس والشرطات المائلة العكسية وفواصل الأسطر كتسلسلات هروب قبل أن توضع داخل سلسلة نصية حرفية في الشيفرة أو البيانات. تختلف القواعد من لغة إلى أخرى، وهنا يسبب النص المنسوخ أخطاء نحوية وملفات إعداد معطوبة. تهرّب هذه الأداة النص أو تزيل تهريبه لخمسة أهداف: JSON وJavaScript وJava وبايثون وXML. يتبع تهريب JSON الدالة JSON.stringify، فتصبح علامات الاقتباس والشرطات المائلة العكسية وأحرف التحكم \" و\\ و\n وتسلسلات \u؛ وتعالج أوضاع JavaScript وJava وبايثون علامات الاقتباس والشرطات المائلة العكسية وأحرف التحكم الشائعة لسلاسلها الحرفية؛ ويحوّل XML الأحرف & و< و> و" و' إلى كيانات. الصق النص واختر اللغة والاتجاه، ثم انسخ النتيجة إلى شيفرتك.

الأسئلة الشائعة

متى أحتاج إلى تهريب سلسلة نصية؟
كلما وُضع نص داخل سلسلة حرفية أو صيغة بيانات تستخدم بعض الأحرف كجزء من صيغتها، مثل علامة اقتباس داخل قيمة JSON، أو شرطة مائلة عكسية في مسار ويندوز داخل JavaScript، أو علامة & داخل XML.
ما الفرق بين تهريب JSON وتهريب JavaScript؟
يجب أن تستخدم سلاسل JSON علامات اقتباس مزدوجة وأن تهرّب أحرف التحكم بصيغة \n أو \t أو \u00XX. أما JavaScript فتسمح أيضًا بالسلاسل ذات علامات الاقتباس المفردة وسلاسل القوالب، لذا يعالج تهريبها علامات الاقتباس المفردة كذلك، ويمكنه كتابة أحرف التحكم بتسلسلات \x.
كيف تُمثَّل فواصل الأسطر بعد التهريب؟
يصبح فاصل السطر الحقيقي الحرفين \n (ويصبح رجوع العربة \r)، فيتسع النص كله في سطر واحد من الشيفرة. وعند إزالة التهريب تعود فواصل أسطر حقيقية.
هل يكفي التهريب لمنع هجمات الحقن؟
التهريب المناسب للسياق يساعد، لكن استخدم الاستعلامات المُعلَّمة لـ SQL، وقوالب إطار العمل لـ HTML، وتجنّب بناء أوامر الصدفة من مدخلات المستخدم. التهريب اليدوي سهل الخطأ.
لماذا تبقى بعض التسلسلات دون تغيير عند إزالة التهريب؟
تُحوَّل فقط التسلسلات الصالحة في اللغة المختارة. إذا هُرِّبت السلسلة للغة أخرى، مثل كيانات XML في وضع JSON، فانتقل إلى الوضع المطابق أولًا.

أدوات ذات صلة