\uXXXX.يهرب \n \t \r \\ \" \b \f \/ وتسلسلات \uXXXX لأحرف التحكم
كيف يعمل
يحوّل التهريب الأحرف الخاصة في نص —فواصل الأسطر وعلامات الجدولة وعلامات الاقتباس والشرطة المائلة العكسية نفسها— إلى تسلسلات بالشرطة المائلة العكسية (\n و\t و\" و\\) كي يمكن إدراج ذلك النص داخل سلسلة في الشيفرة دون كسر صياغتها.
لكل لغة قواعد مختلفة: JSON وC/Java/JS وPython وSQL وRegex وShell تهرّب مجموعات مختلفة من الأحرف. اختر نمط الوجهة التي ستلصق فيها النص.
يقوم فك التهريب بالعكس: يفسّر التسلسلات \n و\t و\uXXXX وما شابه، ويعيد النص الأصلي.
أمثلة
C:\Users\anaC:\\Users\\anaفي JSON وC/Java/JS تُضاعَف كل شرطة مائلة عكسية كي لا تُخلَط مع بداية تسلسل تهريب.O'BrienO''Brienفي SQL تُضاعَف علامة الاقتباس المفردة (معيار ANSI) لإمكان تضمينها داخل قيمة حرفية.precio (USD)precio \(USD\)في Regex تُهرَّب الأحرف الوصفية مثل ( ) لمعاملتها كنص حرفي لا كتجميع.حالات الاستخدام
- لصق مسار Windows أو JSON أو جزء HTML داخل سلسلة في الشيفرة دون كسرها.
- إعداد قيمة لاستعلام SQL مع تجنّب أخطاء الصياغة بسبب علامات الاقتباس.
- تحويل نص حرفي إلى نمط تعبير نمطي بتهريب أحرفه الوصفية.
- استعادة النص الأصلي لسلسلة مهرَّبة منسوخة من سجل أو من الشيفرة المصدرية.
الأسئلة الشائعة
ما الفرق بين أنماط التهريب؟
تتعرّف كل لغة على تسلسلات مختلفة: JSON لا يقبل \' ولا \0، بينما C وPython يقبلانها؛ وSQL يضاعف علامات الاقتباس بدل استخدام الشرطة المائلة العكسية؛ وRegex يهرّب الأحرف الوصفية؛ وShell يهرّب الفراغات ورموز المفسِّر. لهذا يُفضَّل اختيار نمط الوجهة.
ماذا يفعل خيار "تهريب غير ASCII"؟
يحوّل أحرف Unicode (الحروف المشكولة، الرموز التعبيرية) إلى تسلسلات \uXXXX —أو \xNN في Python وC— كي يكون النص آمنًا في وجهات لا تقبل سوى ASCII.
هل تهريب علامات الاقتباس يحمي من حقن SQL؟
يساعد لكنه لا يغني عن الاستعلامات ذات المَعلمات. للبيانات غير الموثوقة استخدم دائمًا مَعلمات أو عبارات مُعدّة مسبقًا؛ فالتهريب مجرد دفاع مكمّل.
هل يُرسَل نصي إلى خادم؟
لا. يتم التهريب وفك التهريب بالكامل في متصفحك.