مفكك ترميز Unicode

حوّل بين هروبات Unicode والنص. يدعم \uXXXX و \UXXXXXXXX وكيانات &#XXXX; والبحث عن نقاط الرمز. جميع العمليات تتم في متصفحك.

ترميز وفك ترميز معلومات الحرف معالجة من جانب العميل
ستظهر النتيجة هنا...

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

1

اختر الوضع

حدد وضع فك الترميز (هروب إلى نص) أو ترميز (نص إلى هروب).

2

أدخل البيانات

الصق هروبات Unicode أو نصاً عادياً حسب الوضع.

3

تحويل

انقر تحويل وراجع النتيجة وتفاصيل الأحرف.

ما هو ترميز Unicode؟

يسمح ترميز Unicode بتمثيل أحرف من أي لغة أو نظام رموز بتنسيقات مختلفة. تشمل تنسيقات الترميز الشائعة \uXXXX (JavaScript/JSON) و &#NNNNN; (كيانات HTML) و U+XXXX (نقاط رمز Unicode). تضمن هذه الترميزات إمكانية نقل النص بأمان وعرضه عبر الأنظمة المختلفة.

تنسيقات الترميز

ترميز JavaScript

يُستخدم في سلاسل JSON و JavaScript

كيانات HTML (&#XXXX;)

يُستخدم في HTML لتمثيل الأحرف الخاصة

هروبات CSS (\XXXXXX)

يُستخدم في محتوى CSS والمعرّفات

إصلاح النص المشوّه (Mojibake)

يظهر النص المشوّه (mojibake) عند قراءة بايتات مرمّزة بترميز ما بترميز آخر. الحالة الأشيع: قراءة بايتات UTF-8 كـ Windows-1252 أو Latin-1، فيتحول "café" إلى "café". بدّل إلى وضع إصلاح النص المشوّه أعلاه والصق النص التالف، وسيتعامل فاك التشفير مع كل محرف كبايت خام ويعيد فكّه كـ UTF-8.

أمثلة شائعة على النص المشوّه

مشوّه بعد الإصلاح السبب
café café UTF-8 → Latin-1
å¼ ä¸‰ 张三 UTF-8 → Latin-1
“hi†“hi” UTF-8 → double-encoded
ü ö ñ ü ö ñ UTF-8 → Windows-1252
�� � � بايتات مفقودة أصلًا (U+FFFD)

لتجنب التشوّه في تطبيقاتك، صرّح دائمًا بالترميز: HTML باستخدام <meta charset="UTF-8">، وترويسة Content-Type: text/html; charset=utf-8، وUTF-8 في قواعد البيانات والاتصالات.

مقارنة UTF-8 و UTF-16 و UTF-32

UTF-8 UTF-16 UTF-32
وحدة الترميز 8 bit 16 bit 32 bit
A (U+0041) 41 00 41 00 00 00 41
é (U+00E9) C3 A9 00 E9 00 00 00 E9
中 (U+4E2D) E4 B8 AD 4E 2D 00 00 4E 2D
🎉 (U+1F389) F0 9F 8E 89 D8 3C DF 89 00 01 F3 89
الأنسب لـ الويب و JSON وواجهات API — متوافق مع ASCII ومضغوط النصوص في الذاكرة لـ Java و JavaScript و C# الوصول المباشر لنقاط الترميز، نادر

نقاط Unicode الشائعة

مرجع سريع للمحارف الأكثر بحثًا: علامات الترقيم والرموز والعملات والأحرف المُشكَّلة والرموز الرياضية مع نقاط U+XXXX.

الترقيم والرموز

“U+201C ”U+201D ‘U+2018 ’U+2019
–U+2013 —U+2014 …U+2026  U+A0
©U+A9 ®U+AE ™U+2122 °U+B0

رموز العملات

€U+20AC £U+A3 ¥U+A5 ₹U+20B9
¢U+A2 ₽U+20BD ₩U+20A9 ฿U+E3F

أحرف مُشكَّلة

éU+E9 èU+E8 êU+EA üU+FC
öU+F6 ñU+F1 åU+E5 øU+F8
çU+E7 ßU+DF ąU+105 žU+17E

الرياضيات والأسهم

±U+B1 ×U+D7 ÷U+F7 ≈U+2248
≠U+2260 ≤U+2264 ≥U+2265 →U+2192
∞U+221E ∑U+2211 √U+221A µU+B5

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

ما هي تنسيقات هروب Unicode المدعومة؟

تدعم هذه الأداة \uXXXX (BMP) و \UXXXXXXXX (Unicode الكامل) و &#DDDD; (كيان HTML عشري) و &#xHHHH; (كيان HTML ست عشري) و U+XXXX (تدوين نقطة الرمز) لفك الترميز.

كيف يعمل ترميز UTF-8؟

يُشفّر UTF-8 كل نقطة رمز Unicode باستخدام 1 إلى 4 بايت. أحرف ASCII (من U+0000 إلى U+007F) تستخدم 1 بايت، والأحرف اللاتينية والشائعة الأخرى تستخدم 2 بايت، ومعظم أحرف CJK تستخدم 3 بايت، والرموز التعبيرية والأحرف النادرة تستخدم 4 بايت.

ما الفرق بين \u و \U؟

\uXXXX يستخدم 4 أرقام ست عشرية ويمكنه تمثيل الأحرف في المستوى متعدد اللغات الأساسي (من U+0000 إلى U+FFFF). \UXXXXXXXX يستخدم 8 أرقام ست عشرية ويمكنه تمثيل أي حرف Unicode بما في ذلك تلك التي تتجاوز BMP.

لماذا يظهر في نصي محارف مثل "é" أو "�" وكيف أصلحها؟

هذه علامات على mojibake: فُكّت بايتات UTF-8 كـ Windows-1252/Latin-1. تعني "é" أن بايتي UTF-8 للحرف "é" (0xC3 0xA9) عُرضا كمحرفين منفصلين. استخدم وضع إصلاح النص المشوّه. أما "�" فهي U+FFFD، محرف الاستبدال — البايتات فُقدت ولا يمكن استعادتها.

ما الفرق بين UTF-8 و UTF-16؟

يرمّز UTF-8 المحارف في 1–4 بايتات وهو متوافق تمامًا مع ASCII، ما يجعله الافتراضي للويب و JSON وواجهات API. يستخدم UTF-16 بايتين أو أربعة (أزواج بديلة بعد U+FFFF) وتستخدمه JavaScript و Java و Windows داخليًا. لنصوص الويب، UTF-8 أصغر وأكثر أمانًا.

ما الفرق بين نقطة الرمز ووحدة الترميز؟

نقطة الرمز هي رقم يُخصَّص لحرف في معيار Unicode (U+00E9 للحرف é)؛ أما وحدة الترميز فهي وحدة التخزين التي يستخدمها الترميز. وحدات ترميز UTF-8 هي بايتات بحجم 8 بت - يأخذ U+00E9 منها اثنتين - بينما وحدات ترميز UTF-16 بحجم 16 بت، وتحتاج الأحرف التي تتجاوز U+FFFF إلى وحدتين منها (زوج بديل، surrogate pair). سلاسل JavaScript النصية مشفَّرة بترميز UTF-16، لذا فإن 'hello'.length تساوي 5 بينما .length لأي رمز تعبيري (إيموجي) تساوي 2.

ما هي أشكال التطبيع في Unicode ومتى تكون مهمة؟

يمكن تمثيل الحرف الظاهر نفسه بتتابعات بايتات متعددة: الحرف é إما كحرف مركَّب واحد جاهز (NFC) أو كحرف e مع علامة نطق منفصلة (NFD). صيغة NFC تؤلِّف الحروف وNFD تفكِّكها، بينما تضيف NFKC/NFKD طيَّ أحرف التوافق أيضاً (الأشكال كاملة العرض وحروف التراكب). مقارنة مدخلات المستخدم أو حساب بصماتها (hashing) دون التطبيع أولاً سبب كلاسيكي لتكرار الحسابات وفشل عمليات البحث - مثل تراكب fi مقابل f+i.

ما هو BOM ولماذا يُفسد ملفاتي؟

علامة ترتيب البايتات (BOM) هي الرمز U+FEFF مكتوباً في بداية تدفق البيانات (EF BB BF في UTF-8) للإشارة إلى الترميز. عادةً ما تُخفيه المحررات، لكنه يصبح لاحقاً حرفاً أولياً غير مرئي: يكتسب ترويسة CSV مفتاحاً شبحياً، ويفشل تحليل JSON بسبب هذه الرمزة الشاردة، وتُصدِر جلسات PHP ذلك قبل الترويسات. لا يحتاج UTF-8 إلى BOM لأنه لا يعاني من أي غموض في ترتيب البايتات - احفظ ملفاتك بدونه.

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}