मुख्य सामग्री पर जाएँ

मुफ़्त HTML एनकोडर और डिकोडर

विशेष वर्णों को HTML इकाइयों में एनकोड करें या इकाइयों को वापस सादे पाठ में डिकोड करें। तुरंत, आपके ब्राउज़र में.

लोड होने के बाद ऑफ़लाइन काम करता है
आउटपुट:
उदाहरण:
सादा टेक्स्ट / HTML
एनकोड किया गया HTML
आउटपुट यहाँ दिखेगा...
सामान्य HTML एंटिटीज़ संदर्भ
&&
<&lt;
>&gt;
"&quot;
'&#39;
·&nbsp;
©&copy;
®&reg;
™&trade;
€&euro;
—&mdash;
…&hellip;

सामान्य उपयोग

  • RSS फीड के लिए सामग्री एन्कोड करेंRSS फीड आइटम विवरण के लिए HTML सामग्री एन्कोड करें — RSS 2.0 मानक द्वारा आवश्यक।
  • HTML आउटपुट के लिए उपयोगकर्ता इनपुट को कीटाणुरहित करेंउपयोगकर्ता-प्रदान की गई स्ट्रिंग को HTML में डालने से पहले एन्कोड करें — XSS इंजेक्शन हमले को रोकता है।
  • HTML ईमेल के लिए विशेष वर्णों को एनकोड करें&, <, > और © जैसे वर्णों को HTML एंटिटी के रूप में एनकोड करें ताकि वे सभी ईमेल क्लाइंट में सही ढंग से प्रदर्शित हों।
  • वेब डिस्प्ले के लिए उपयोगकर्ता सामग्री को एनकोड करेंHTML पृष्ठों में प्रदर्शित करने से पहले उपयोगकर्ता-जनित सामग्री को एनकोड करके XSS हमलों को रोकें।
  • XML के लिए सामग्री को एनकोड करेंXML फाइलों, RSS फीड, साइटमैप और SOAP पेलोड के लिए विशेष वर्णों को एनकोड करें।

यह कैसे काम करता है

यहाँ HTML एनकोडिंग और डिकोडिंग पूरी तरह आपके ब्राउज़र में हाथ से लिखे रेगेक्स रिप्लेसमेंट और एक हार्डकोडेड नामित-एंटिटी लुकअप टेबल का उपयोग करके चलती है — कोई थर्ड-पार्टी एनकोडिंग लाइब्रेरी नहीं, कोई सर्वर राउंड-ट्रिप नहीं। असामान्य नामित एंटिटी (जैसे &aacute; या &ldquo;) डिकोड करने के लिए, टूल एक ज़ीरो-कॉस्ट फ़ॉलबैक के रूप में ब्राउज़र के अपने HTML पार्सर को सौंपता है।

  1. 1
    बदलने के लिए कैरेक्टरों के लिए रेगेक्स स्कैन करता है
    एनकोड करते समय, आपके इनपुट पर दो Unicode-अवेयर रेगेक्स में से एक चलता है: एक लक्षित पैटर्न जो ~25 सामान्य HTML-महत्वपूर्ण और विशेष कैरेक्टर कवर करता है, या एक व्यापक पैटर्न जो U+007F से ऊपर हर कोड पॉइंट पकड़ता है। हर मैच कैरेक्टर-दर-कैरेक्टर इंटरसेप्ट किया जाता है।
  2. 2
    लुकअप टेबल या codePointAt() एंटिटी बनाता है
    नामित-एंटिटी आउटपुट के लिए, मैच किए कैरेक्टर एक हार्डकोडेड टेबल में देखे जाते हैं (जैसे & → &amp;, © → &copy;)। दशमलव या हेक्स आउटपुट के लिए, String.codePointAt() Unicode कोड पॉइंट पाता है और इसे &#NNN; या &#xNNN; के रूप में फ़ॉर्मेट करता है — सरोगेट जोड़े सही ढंग से हैंडल होते हैं क्योंकि रेगेक्स Unicode 'u' फ़्लैग उपयोग करता है।
  3. 3
    एकल-पास रेगेक्स एंटिटी को वापस कैरेक्टरों में डिकोड करता है
    डिकोड करते समय, एक सिंगल रेगेक्स पास सभी एंटिटी टोकन (&amp;, &#65;, &#x41;, आदि) की पहचान करता है और हर एक को सही हैंडलर तक भेजता है: हेक्स parseInt(base 16), दशमलव Number(), नामित रिवर्स-लुकअप, या — हार्डकोडेड टेबल में न होने वाली किसी भी एंटिटी के लिए — एक textarea एलिमेंट जिसका innerHTML ब्राउज़र नेटिव रूप से पार्स करता है, ब्राउज़र की बिल्ट-इन एंटिटी टेबल से सही कैरेक्टर लौटाते हुए।
  4. 4
    परिणाम तुरंत दिखता है; Clipboard API के ज़रिए क्लिपबोर्ड में कॉपी करें
    React useMemo के ज़रिए हर कीस्ट्रोक पर आउटपुट सिंक्रोनसली फिर से गणना किया जाता है। कॉपी करना navigator.clipboard.writeText() — आधुनिक async Clipboard API — उपयोग करता है, प्रतिबंधित संदर्भों के लिए एक silent catch के साथ।

संबंधित टूल

अक्सर पूछे जाने वाले प्रश्न