টুল
গাইড

HTML এন্টিটি এনকোড / ডিকোড

এনকোডিং

HTML এন্টিটি এনকোড ও ডিকোড — নামভুক্ত, দশমিক এবং হেক্সাডেসিমাল।

100% ক্লায়েন্ট-সাইড কোনো ব্যাকএন্ড নেই
ইনপুট
আউটপুট
এই পৃষ্ঠায়

HTML এন্টিটি এনকোডিং কী?#

HTML কয়েকটি অক্ষরকে বিশেষ অর্থ দেয়: < এবং > ট্যাগ নির্দেশ করে, & একটি এন্টিটি বা ক্যারেক্টার রেফারেন্স শুরু করে, এবং " এবং ' অ্যাট্রিবিউট মান উদ্ধৃত করে। যখনই আপনি চান যে সেই অক্ষরগুলোর একটি একটি পৃষ্ঠায় আক্ষরিক টেক্সট হিসেবে উপস্থিত হবে — ব্যবহারকারীদের একটি কোড স্নিপেটের সোর্স দেখানো, একটি ফিল্ডে সার্চ ইনপুট ফিরিয়ে দেওয়া, Tom & Jerry স্ট্রিংটি প্রদর্শন করা — আপনাকে তা একটি এন্টিটি নামক স্ট্যান্ড-ইন দিয়ে প্রতিস্থাপন করতে হবে। সেই প্রতিস্থাপনটিই হলো HTML এন্টিটি এনকোডিং।

একই এস্কেপ লেখার তিনটি উপায় আছে, এবং এই টুলটি বিকল্প নির্বাচনকারীর মাধ্যমে তিনটিই অফার করে:

  • নামভুক্ত& হয় &amp;, < হয় &lt;, ইত্যাদি। মানব-পঠনযোগ্য, এবং একমাত্র ফর্ম মানুষ সাধারণত নিজ হাতে টাইপ করে। এই মোডে শুধুমাত্র পাঁচটি কাঠামোগতভাবে বিপজ্জনক অক্ষর এস্কেপ করা হয়; বাকি সবকিছু অস্পর্শিত পাস করে।
  • দশমিক — প্রতিটি নন-ASCII বা কন্ট্রোল অক্ষর &#N; হয়ে যায়, যেখানে N হলো তার Unicode কোড পয়েন্ট দশমিকে (উদাহরণস্বরূপ © হয় &#169;)। ভালো যখন আপনি চান প্রতিটি অ-মানক বাইট দৃশ্যমান এবং ASCII-নিরাপদ হোক।
  • হেক্সাডেসিমাল — হেক্সাডেসিমাল কোড পয়েন্ট সহ একই ধারণা: © হয় &#xa9;। সংক্ষিপ্ত এবং Unicode টেবিলে আপনি যে কোড-পয়েন্ট প্রতীক দেখেন তার সাথে স্বাভাবিকভাবে মিলে যায়।

ডিকোডিং একটি সংকলিত HTML5 সাবসেটে নামভুক্ত এন্টিটিগুলোকে চেনে, এবং &#NN; (দশমিক) ও &#xHH; (হেক্স)। একটি অচেনা নামভুক্ত এন্টিটিকে অনুমান করার বদলে হুবহু রেখে দেওয়া হয় — নীরবে ভুল অক্ষর নির্গত করার চেয়ে নিরাপদ।

ব্যবহারবিধি#

  1. উপরের বাম দিকের টগল থেকে এনকোড বা ডিকোড বেছে নিন।
  2. বিকল্প-এর অধীনে, নামভুক্ত, দশমিক, বা হেক্সাডেসিমাল বেছে নিন।
  3. বাঁদিকের ইনপুট পেইনে পেস্ট করুন।
  4. ডানদিকের আউটপুট পেইন থেকে এস্কেপ করা (বা আনএস্কেপ করা) ফলাফল পড়ুন এবং কপি ক্লিক করুন।
  5. নমুনা একটি প্রদর্শন স্ট্রিং লোড করে; মুছুন পেইনগুলো রিসেট করে।

মূল বৈশিষ্ট্য#

  • এক নির্বাচনকারী থেকে তিনটি এস্কেপ শৈলী। পুনরায় না পেস্ট করেই নামভুক্ত, দশমিক এবং হেক্সের মধ্যে স্যুইচ করুন, যা আউটপুট তুলনা করা তুচ্ছ করে তোলে।
  • অ্যাস্ট্রাল-অক্ষর সঠিক। পুনরাবৃত্তি Unicode কোড পয়েন্ট অনুসারে হয়, UTF-16 কোড ইউনিট অনুসারে নয়, তাই 🌍-এর মতো একটি ইমোজি একটি অক্ষর হিসেবে গণ্য হয় (&#x1f30d;), সারোগেটের একটি ভাঙা জোড় হিসেবে নয়।
  • সংকলিত, নিরাপদ ডিকোডার। নামভুক্ত-এন্টিটি ম্যাপ সাধারণ HTML5 রেফারেন্সগুলো কভার করে (কপিরাইট, ট্রেডমার্ক, অ্যাকসেন্টযুক্ত অক্ষর, গাণিতিক প্রতীক, উদ্ধৃতি এবং ড্যাশ)। অজানা নামগুলো বিকৃত হওয়ার বদলে অস্পর্শিত পাস করে।
  • কোনো DOM জড়িত নয়। এনকোডিং এবং ডিকোডিং বিশুদ্ধ স্ট্রিং অপারেশন — কোনো লুকানো <div> ইনজেকশন নেই — তাই লজিকটি সম্পূর্ণ পরীক্ষাযোগ্য এবং টুলটি নিজে আপনার ইনপুটকে মার্কআপ হিসেবে ব্যাখ্যা করার কোনো ঝুঁকি নেই।

ব্যবহারিক উদাহরণ#

এমন একটি ফ্র্যাগমেন্ট নিন যা মার্কআপকে একটি আক্ষরিক প্রতীকের সাথে মেলায়:

<a href="x">Tom & Jerry</a> © 2026

নামভুক্ত মোডে, শুধুমাত্র পাঁচটি বিপজ্জনক অক্ষর এস্কেপ করা হয় এবং ©-কে একা রাখা হয় (এটি কাঠামোগতভাবে বিপজ্জনক নয়):

&lt;a href=&quot;x&quot;&gt;Tom &amp; Jerry&lt;/a&gt; © 2026

দশমিক-এ স্যুইচ করুন এবং ©-ও তার কোড পয়েন্ট হয়ে যায়, যখন মূল অক্ষরগুলো সংখ্যাসূচক ফর্মে স্যুইচ করে:

&#60;a href=&#34;x&#34;&#62;Tom &#38; Jerry&#60;/a&#62; &#169; 2026

হেক্সাডেসিমাল মোডে একই অক্ষরগুলো হেক্সাডেসিমাল কোড পয়েন্ট হিসেবে উপস্থিত হয়:

&#x3c;a href=&#x22;x&#x22;&#x3e;Tom &#x26; Jerry&#x3c;/a&#x3e; &#xa9; 2026

ডিকোডিং এর সবগুলোকে উল্টোদিকে ফেরায়: তিনটি আউটপুটের যেকোনো একটি ডিকোড নির্বাচন করে ফিরিয়ে পেস্ট করুন এবং আপনি © সহ মূল ফ্র্যাগমেন্টটি পাবেন।

প্রশ্নোত্তর#

একটি স্ট্রিংকে HTML-এর ভেতরে বসাতে নিরাপদ করতে আমার কোন মোড ব্যবহার করা উচিত?#

পাঁচটি বিপজ্জনক অক্ষরের জন্য নামভুক্ত প্রায় সবসময়ই সঠিক ডিফল্ট — এটি পঠনযোগ্য, প্রতিটি ব্রাউজারে ভালোভাবে বোঝা যায়, এবং আউটপুটকে diff-বান্ধব রাখে। যখন আপনি বিশেষভাবে প্রতিটি নন-ASCII অক্ষরকে ASCII-নিরাপদ করতে চান তখন দশমিক বা হেক্সাডেসিমাল ব্যবহার করুন (উদাহরণস্বরূপ, এমন একটি ট্রান্সপোর্টের জন্য কন্টেন্ট প্রস্তুত করা যা উচ্চ বাইট প্রত্যাখ্যান করে), সাধারণ এস্কেপিংয়ের জন্য নয়।

আমি &copy; ডিকোড করেছি কিন্তু &mytag;-এর মতো একটি অদ্ভুত নাম অপরিবর্তিত এসেছে। কেন?#

ডিকোডার শুধুমাত্র সেই এন্টিটিগুলোই সমাধান করে যা সে আসলে জানে — সাধারণ নামগুলোর একটি সংকলিত HTML5 সাবসেট। &mytag; একটি প্রকৃত HTML এন্টিটি নয়, তাই টুলটি অনুমান বা বাদ দেওয়ার বদলে তা অস্পর্শিত রাখে। আপনার যদি সত্যিই প্রতিটি DTD-সংজ্ঞায়িত এন্টিটি সমাধান করা প্রয়োজন, আপনি একটি স্ট্রিং কনভার্টারের সুযোগের বাইরে এবং প্রকৃত HTML পার্সিংয়ে আছেন।

HTML-এস্কেপিং কি একটি JavaScript স্ট্রিং বা একটি URL-এ ব্যবহারকারীর ইনপুট নিরাপদ করার জন্য যথেষ্ট?#

না। প্রতিটি প্রসঙ্গের নিজস্ব নিয়ম আছে। HTML এস্কেপিং মার্কআপ ইনজেকশনের বিরুদ্ধে রক্ষা করে, কিন্তু '); alert(1); //-এর মতো একটি স্ট্রিং HTML-এ নিরীহ এবং একটি <script>-এর ভেতরে বিপজ্জনক। একই ইনপুটটির একটি লিঙ্কে যাওয়ার আগে URL-এনকোডিংও প্রয়োজন। গন্তব্য প্রসঙ্গের জন্য এস্কেপ করুন, শুধু একবার নয়।

হেক্স আউটপুট কেন ছোট-হাতের অক্ষর ব্যবহার করে (&#xa9; নয় &#xA9;)?#

ছোট-হাতের হেক্স হলো প্রচলিত, পরিপাটি ফর্ম এবং প্রতিটি ব্রাউজার দ্বারা অভিন্নভাবে পার্স করা হয়। আপনার যদি একটি স্টাইল গাইডের জন্য বড়-হাতের প্রয়োজন হয়, দশমিক মোড (&#169;) প্রশ্নটি সম্পূর্ণ এড়িয়ে যায়, অথবা আউটপুটটি আপনার নিজের কেস ট্রান্সফর্মের মাধ্যমে চালান।