مرمّز Unicode

تعمل في المتصفح الترميز

هرّب أي نص — بما في ذلك العربية والهندية والرموز التعبيرية — إلى تسلسلات \uXXXX الخاصة بـ JavaScript/JSON، أو صيغة \u{XXXXX} في ES2015، أو نقاط الترميز U+، أو الكيانات الرقمية.

الخصوصية: تعمل هذه الأداة بالكامل في متصفحك. لا تغادر بياناتك جهازك أبداً.
جارٍ تحميل الأداة…

ما هما يونيكود وUTF-8؟

يونيكود يعيّن رقماً (نقطة ترميز، تُكتب U+0627 لحرف الألف العربي) لكل محرف في كل نظام كتابة؛ وUTF-8 هو الترميز الذي يحوّل تلك الأرقام إلى بايت واحد حتى أربعة بايتات، وهو الافتراضي على الويب وفي JSON. معظم أخطاء «النص المشوّه» هي تسلسل بايتات UTF-8 يُقرأ بترميز آخر، أو نص يُعدّ بالبايتات حيث توقع البرنامج محارف.

كيفية استخدام مرمّز Unicode

  1. الصق أي نص — عربي أو ديفاناغاري أو رموز تعبيرية أو حروف ذات علامات صوتية.
  2. اختر صيغة الترميز التي تتوقعها لغتك أو نوع ملفك.
  3. فعّل خيار «تهريب ASCII أيضاً» (Escape ASCII too) للحصول على سلاسل مُهرَّبة بالكامل.
  4. انسخ النتيجة؛ وافحص جدول الأحرف بحثاً عن أي مفاجآت.

مزايا مرمّز Unicode

  • \uXXXX (JavaScript/JSON/Java) و\u{…} (ES2015) ونقاط الترميز U+ وكيانات HTML الرقمية وتهريبات CSS وPython وبايتات UTF-8
  • تهريب الأحرف غير ASCII فقط أو كل الأحرف
  • أزواج بديلة (surrogate pairs) صحيحة للرموز التعبيرية وغيرها من الأحرف خارج المستوى الأساسي
  • جدول أحرف يعرض نقطة الترميز والنظام الكتابي والفئة وبايتات UTF-8 وUTF-16
  • يحسب نقاط الترميز ووحدات UTF-16 وبايتات UTF-8

مثال على مرمّز Unicode

تهريب رمز تعبيري من أجل JSON

الإدخال:

Go 🚀

النتيجة:

Go \ud83d\ude80

الأسئلة الشائعة حول مرمّز Unicode

لماذا يتحوّل الرمز التعبيري إلى تسلسلي \u اثنين؟

تتعامل تهريبات JSON وJavaScript الكلاسيكية مع وحدات ترميز UTF-16. وتُخزَّن الأحرف التي تتجاوز U+FFFF، مثل 🚀 (U+1F680)، كزوج بديل — \ud83d\ude80. أما صيغة \u{1F680} (ES2015) فتكتب نقطة الترميز مباشرةً.

ما الصيغة التي يقبلها JSON؟

فقط \uXXXX بأربعة أرقام سداسية عشرية بالضبط (مع الأزواج البديلة للأحرف خارج المستوى الأساسي). صيغة \u{…} صالحة في كود JavaScript المصدري لكنها غير صالحة في JSON.

ما الغرض من صيغة U+؟

هي الطريقة القياسية لتسمية نقاط الترميز في التوثيق وتقارير الأخطاء (مثل U+0645 ARABIC LETTER MEEM). وهي ليست تهريباً داخل السلاسل النصية.

ماذا يعرض جدول الأحرف؟

كل حرف غير ASCII مع نقطة الترميز والنظام الكتابي والفئة العامة وبايتات UTF-8 ووحدات UTF-16 — وهو مفيد لاكتشاف الأحرف المتشابهة شكلاً والواصلات عديمة العرض (zero-width joiners) والعلامات المركّبة (combining marks).

ملاحظات تقنية

سلاسل JavaScript النصية هي متتاليات من وحدات ترميز UTF-16، لذا تحتاج تهريبات \u الكلاسيكية إلى وحدتين للأحرف التي تتجاوز U+FFFF. تحسب الأداة الزوج البديل حسابياً (((cp − 0x10000) >> 10) + 0xD800، ((cp − 0x10000) & 0x3FF) + 0xDC00) وتوفّر صيغة \u{…} الخاصة بـ ES2015 عندما يُفضَّل تهريب واحد لكل نقطة ترميز.

المراجع

  • The Unicode StandardUnicode Consortiumمجموعة المحارف العالمية وأشكال ترميزها (UTF-8 وUTF-16 وUTF-32) والتطبيع وخصائص كل نقطة ترميز.
  • RFC 3629: UTF-8, a transformation format of ISO 10646IETF · 2003كيف تُرمَّز نقاط الترميز إلى بايت واحد حتى أربعة بايتات في UTF-8، وأي تسلسلات بايت غير صالحة.