HTML 엔티티 인코더·디코더(문자 참조 변환)
< > & " ' 등을 HTML 문자 참조(이름, 10진수, 16진수)로 이스케이프하고 문자 참조를 원래 문자로 되돌립니다. HTML5의 이름 있는 문자 참조 2,231개를 모두 지원합니다.
이름이 없는 문자(이모지 등)는 10진수 참조로 바꿉니다.
결과는 HTML로 렌더링하지 않고 문자 그대로 표시합니다.
자주 쓰는 문자 참조 목록
| 문자 | 이름 | 10진수 | 16진수 |
|---|---|---|---|
| HTML 특수 문자 | |||
| & | & | & | & |
| < | < | < | < |
| > | > | > | > |
| " | " | " | " |
| ' | ' | ' | ' |
| 공백 | |||
| 줄바꿈 없는 공백 | |   |   |
| en 공백 |   |   |   |
| em 공백 |   |   |   |
| 얇은 공백 |   |   |   |
| 폭 없는 공백 | ​ | ​ | ​ |
| 문장 부호·따옴표 | |||
| – | – | – | – |
| — | — | — | — |
| ‘ | ‘ | ‘ | ‘ |
| ’ | ’ | ’ | ’ |
| “ | “ | “ | “ |
| ” | ” | ” | ” |
| … | … | … | … |
| « | « | « | « |
| » | » | » | » |
| · | · | · | · |
| • | • | • | • |
| 기호 | |||
| © | © | © | © |
| ® | ® | ® | ® |
| ™ | ™ | ™ | ™ |
| § | § | § | § |
| ¶ | ¶ | ¶ | ¶ |
| ° | ° | ° | ° |
| † | † | † | † |
| ✓ | ✓ | ✓ | ✓ |
| 통화 | |||
| € | € | € | € |
| £ | £ | £ | £ |
| ¥ | ¥ | ¥ | ¥ |
| ¢ | ¢ | ¢ | ¢ |
| ¤ | ¤ | ¤ | ¤ |
| 화살표 | |||
| ← | ← | ← | ← |
| ↑ | ↑ | ↑ | ↑ |
| → | → | → | → |
| ↓ | ↓ | ↓ | ↓ |
| ↔ | ↔ | ↔ | ↔ |
| ⇒ | ⇒ | ⇒ | ⇒ |
| 수학 | |||
| × | × | × | × |
| ÷ | ÷ | ÷ | ÷ |
| ± | ± | ± | ± |
| ≠ | ≠ | ≠ | ≠ |
| ≤ | ≤ | ≤ | ≤ |
| ≥ | ≥ | ≥ | ≥ |
| ∞ | ∞ | ∞ | ∞ |
| ≈ | ≈ | ≈ | ≈ |
사용 방법
- "인코딩" 또는 "디코딩"을 고릅니다.
- 인코딩에서는 형식(이름, 10진수, 16진수)과 변환할 문자(HTML 특수 문자만, 또는 ASCII 이외의 모든 문자 포함)를 고릅니다.
- 문자열을 입력하고 "인코딩하기" 또는 "디코딩하기"를 누릅니다. 디코딩은 이름·10진수·16진수가 섞여 있어도 읽습니다.
- 결과를 "복사"합니다. "결과를 입력으로"를 누르면 반대 방향으로 이어서 변환할 수 있습니다. 아래 목록에서 자주 쓰는 문자 참조를 확인할 수 있습니다.
주의 사항
- 입력은 2MB까지입니다.
- 이름 형식에서 이름이 없는 문자(이모지 등)는 10진수 참조로 씁니다.
- 존재하지 않는 이름(&foo; 등)과 0, 서로게이트, U+10FFFF를 넘는 번호의 참조는 변환하지 않고 그대로 두며 개수를 알려 줍니다.
- 디코딩은 HTML 본문에서 읽는 방식을 따릅니다. 속성 값 안에서는 세미콜론 없는 참조를 브라우저가 다르게 처리할 수 있습니다.
- 결과는 HTML로 렌더링하지 않고 항상 문자 그대로 표시합니다. 태그 제거나 HTML 정화(sanitize) 기능은 없습니다.
계산·변환 방식
이름 있는 문자 참조 목록은 WHATWG HTML Living Standard가 공개한 entities.json(2,231개)에서 생성했습니다.
디코딩은 입력을 브라우저의 HTML 파서에 넘기지 않고 자체 파서로 하나씩 읽습니다. &, ©처럼 예전부터 있던 일부 이름은 세미콜론 없이도 읽고, A 같은 숫자 참조도 세미콜론을 생략할 수 있습니다.
숫자 참조 128~159는 브라우저와 마찬가지로 Windows-1252 문자로 읽습니다(예: – → –).
이모지처럼 U+FFFF를 넘는 문자는 서로게이트 반쪽 두 개가 아니라 하나의 코드 포인트(😀)로 변환합니다.
자주 묻는 질문
어떤 문자를 이스케이프해야 하나요?
HTML 본문이나 속성 값에 문자열을 넣는다면 & < > " ' 다섯 개면 충분합니다. ASCII만 처리하는 시스템에 넘길 때는 "ASCII 이외의 모든 문자"를 고릅니다.
이름, 10진수, 16진수 중 무엇을 써야 하나요?
브라우저에서는 셋 다 같은 문자로 보입니다. 읽기 쉬운 것은 이름(©), 모든 문자에 쓸 수 있는 것은 숫자(© 또는 ©)입니다.
는 무엇으로 디코딩되나요?
줄바꿈 없는 공백(U+00A0)이 됩니다. 보통 공백처럼 보이지만 다른 문자입니다.
입력한 내용이 전송되나요?
아니요. 모든 처리는 브라우저 안에서 이루어지며 입력 내용을 저장하거나 전송하지 않습니다.
관련 도구
최종 업데이트: