Langsung ke konten utama

Enkoder & Dekoder HTML gratis

Enkode karakter khusus ke entitas HTML atau dekode entitas kembali ke teks biasa. Seketika, di browser Anda.

Berfungsi offline setelah dimuat
Output:
Contoh:
Teks biasa / HTML
HTML yang di-encode
Output akan muncul di sini...
Referensi entitas HTML umum
&&
<&lt;
>&gt;
"&quot;
'&#39;
·&nbsp;
©&copy;
®&reg;
™&trade;
€&euro;
—&mdash;
…&hellip;

Penggunaan umum

  • Encode Konten untuk Feed RSSEncode konten HTML untuk deskripsi item feed RSS — diperlukan oleh standar RSS 2.0.
  • Sanifikasi Input Pengguna untuk Keluaran HTMLEncode string yang disediakan pengguna sebelum memasukkannya ke HTML — mencegah serangan injeksi XSS.
  • Enkode Karakter Khusus untuk Email HTMLEnkode karakter seperti &, <, >, dan © sebagai entitas HTML sehingga ditampilkan dengan benar di semua klien email.
  • Enkode Konten Pengguna untuk Tampilan WebCegah serangan XSS dengan mengenkode konten buatan pengguna sebelum merender di halaman HTML.
  • Enkode Konten untuk XMLEnkode karakter khusus untuk file XML, umpan RSS, peta situs, dan muatan SOAP.

Cara kerja

Pengodean dan pendekodean HTML di sini berjalan sepenuhnya di browser Anda menggunakan penggantian regex tulisan tangan dan tabel pencarian entitas bernama tetap — tanpa library pengodean pihak ketiga, tanpa perjalanan pulang-pergi server. Untuk mendekode entitas bernama yang tidak umum (seperti &aacute; atau &ldquo;), alat ini mendelegasikan ke parser HTML browser sendiri sebagai fallback tanpa biaya.

  1. 1
    Regex memindai karakter untuk diganti
    Saat mengodekan, salah satu dari dua regex sadar-Unicode berjalan pada masukan Anda: pola bertarget yang mencakup ~25 karakter umum yang signifikan bagi HTML dan karakter khusus, atau pola lebih luas yang menangkap setiap code point di atas U+007F. Setiap kecocokan dicegat karakter demi karakter.
  2. 2
    Tabel pencarian atau codePointAt() menghasilkan entitas
    Untuk keluaran entitas-bernama, karakter yang cocok dicari dalam tabel tetap (misalnya & → &amp;, © → &copy;). Untuk keluaran desimal atau heksa, String.codePointAt() mendapatkan code point Unicode dan memformatnya sebagai &#NNN; atau &#xNNN; — pasangan surrogate ditangani dengan benar karena regex menggunakan flag Unicode 'u'.
  3. 3
    Regex satu-lintasan mendekode entitas kembali ke karakter
    Saat mendekode, satu lintasan regex mengidentifikasi semua token entitas (&amp;, &#65;, &#x41;, dll.) dan merutekan masing-masing ke penangan yang tepat: parseInt basis-16 heksa, Number() desimal, pencarian-balik bernama, atau — untuk entitas apa pun yang tidak ada di tabel tetap — elemen textarea yang innerHTML-nya diurai secara native oleh browser, mengembalikan karakter yang benar dari tabel entitas bawaan browser.
  4. 4
    Hasil muncul instan; salin ke clipboard via Clipboard API
    Keluaran dihitung ulang secara sinkron setiap ketukan tombol via React useMemo. Menyalin menggunakan navigator.clipboard.writeText() — Clipboard API asinkron modern — dengan penangkapan senyap untuk konteks terbatas.

Alat terkait

Pertanyaan yang sering diajukan