วิธีใช้งาน
- เลือก Encode หรือ Decode และเลือก escape แบบ HTML หรือ Unicode
- วางข้อความ ผลลัพธ์จะอัปเดตขณะพิมพ์
- สำหรับการเข้ารหัส HTML ให้เลือกว่าจะ escape เฉพาะอักขระพิเศษ 5 ตัว หรืออักขระที่ไม่ใช่ ASCII ทุกตัวด้วย
- คัดลอกผลลัพธ์
คำอธิบายตัวเลือก
- Escape อักขระพิเศษ
- แปลงอักขระ & < > " ' เป็น entity นี่คือทั้งหมดที่หน้าเว็บ UTF-8 ต้องใช้ และช่วยให้อักขระอื่นยังอ่านได้
- Escape อักขระที่ไม่ใช่ ASCII ด้วย
- แปลงอักขระทุกตัวที่อยู่นอก ASCII เป็น numeric entity สำหรับระบบที่ไม่สามารถจัดเก็บ UTF-8 ได้
- Named entity
- ใช้ชื่อเช่น © และ เมื่อมีชื่อที่กำหนดไว้ หากไม่มีให้ใช้ numeric entity
- Unicode escape
- ใช้ \uXXXX สำหรับ JavaScript และ JSON (emoji จะกลายเป็น escape สองชุด หรือ surrogate pair), \u{…} สำหรับ JavaScript รุ่นใหม่, U+XXXX สำหรับระบุ code point และ &#…; เป็น HTML entity แบบเลขฐานสิบ
Entity ที่พบบ่อย
| อักขระ | ชื่อ | ตัวเลข |
|---|---|---|
| & | & |
& |
| < | < |
< |
| > | > |
> |
| “ | " |
" |
| ’ | ' |
' |
| ช่องว่างไม่ตัดบรรทัด | |
  |
| © | © |
© |
| — | — |
— |
คำถามที่พบบ่อย
การ escape HTML ช่วยป้องกัน XSS หรือไม่?
การ escape ข้อความก่อนแทรกลงในเนื้อหาขององค์ประกอบ HTML เป็นแนวป้องกันที่สำคัญอย่างหนึ่ง แต่บริบทของแอตทริบิวต์ URL JavaScript และ CSS ต้องใช้กฎการ escape ของตัวเอง จึงควรใช้การ escape ในตัวของเฟรมเวิร์ก แทนการทำด้วยตนเอง
ความแตกต่างระหว่าง กับช่องว่างปกติคืออะไร?
ช่องว่างไม่ตัดบรรทัด (U+00A0) มีลักษณะเหมือนช่องว่าง แต่ป้องกันไม่ให้เบราว์เซอร์ตัดบรรทัดตรงจุดนั้น และช่องว่างหลายตัวติดกันจะไม่ถูกรวมเป็นตัวเดียว
ทำไม © ที่ไม่มีเซมิโคลอนปิดท้ายจึงยังถอดรหัสได้?
ด้วยเหตุผลทางประวัติศาสตร์ มาตรฐาน HTML จะถอดรหัส entity ที่พบบ่อยบางรายการได้แม้ไม่มีเซมิโคลอนปิดท้าย ตัวถอดรหัสนี้ใช้กฎเดียวกับเบราว์เซอร์
จะแสดงอีโมจิใน JSON เป็น escape ได้อย่างไร?
เลือก Unicode escape ด้วย \uXXXX อีโมจิที่อยู่นอก Basic Multilingual Plane จะกลายเป็น escape สองชุด ตัวอย่างเช่น 😀 จะเป็น 😀
ความเป็นส่วนตัว
เครื่องมือนี้ทำงานในเบราว์เซอร์ของคุณทั้งหมด ไฟล์และข้อความของคุณได้รับการประมวลผลบนอุปกรณ์ของคุณ และจะไม่ถูกอัปโหลดไปยังเซิร์ฟเวอร์ของเรา