URL 인코딩 풀기: %ED%95%9C이 다시 한글 "한"으로

글에 한 대신 %ED%95%9C가 보이나요? 띄어쓰기가 %20으로 나오기도 합니다. URL 인코딩, 곧 퍼센트 인코딩입니다. 위 칸에 붙여 넣으면 Mojibuster가 바로 읽을 수 있는 글자로 되돌립니다. 업로드는 없습니다.

텍스트와 다음 파일을 지원합니다:

  • CSV
  • TXT
  • JSON
  • XML
  • SRT
  • VTT
  • SMI
  • TSV
  • MD
  • HTML
  • SQL
  • LOG

엑셀 내보내기, 데이터베이스 덤프, 자막, 웹사이트 코드 등.

복구하기

  1. 파일을 끌어다 놓거나 텍스트 붙여넣기
  2. 자동으로 복구
  3. 복사하거나 내려받기
또는 파일을 여기로 끌어다 놓기
  • 업로드 없음. 파일은 브라우저 안에서 복구되며 기기 밖으로 나가지 않습니다.

  • EU 내 서버. Mojibuster는 핀란드(EU)의 서버에서 운영되며 EU 일반 개인정보 보호법(GDPR)이 적용됩니다. GDPR 원문(EUR-Lex, 영어)

URL 인코딩은 어떻게 작동하나요

웹 주소에는 악센트 없는 영문자, 숫자, 일부 기호만 쓸 수 있습니다. 나머지는 모두 코드로 바뀝니다. UTF-8에서 한은 ED, 95, 9C 세 바이트라서 %ED%95%9C가 됩니다. 띄어쓰기는 %20, 폼에서는 +입니다.

URL 인코딩된 글과 되돌린 결과입니다.

인코딩된 글

%EC%84%9C%EC%9A%B8%EC%9D%98 %EA%B9%80%EC%B9%98%EC%B0%8C%EA%B0%9C

되돌린 글

서울의 김치찌개

자주 보이는 URL 코드

  • %ED%95%9C = 한, %EA%B8%80 = 글, %EA%B0%80 = 가, %EB%82%98 = 나
  • %ED%95%9C%EA%B5%AD%EC%96%B4 = 한국어, %EC%84%9C%EC%9A%B8 = 서울
  • %E2%82%AC = €, %E2%80%99 = ’, %E2%80%93 = –
  • %20 = 띄어쓰기, %2F = /, %3F = ?, %26 = &, %25 = %

한글 한 글자는 3바이트라서 코드로는 9글자가 됩니다. 한글 코드는 %EA, %EB, %EC, %ED로 시작하니, 이런 코드가 길게 이어지면 한글이 인코딩된 것으로 보면 됩니다. 오래된 사이트에서는 EUC-KR 코드도 보입니다. %C7%D1%B1%B9%BE%EE는 한국어이며, Mojibuster가 이것도 알아보고 되돌립니다.

URL 코드는 어디서 생기나요

  • 복사한 링크: 브라우저는 한글 주소를 읽기 쉽게 보여 주지만, 복사하면 %EC%84%9C%EC%9A%B8처럼 붙여 넣어질 때가 많습니다.
  • 폼과 방문 분석: 검색어와 UTM 값은 서버 로그와 분석 내보내기 파일에 인코딩된 채 남습니다. 예: ?q=%EA%B9%80%EC%B9%98.
  • 내보내기와 API: 일부 뉴스레터 도구, 웹훅, API는 값을 인코딩해 저장합니다. 그러면 엑셀과 CSV에 이름 대신 코드가 나옵니다.
  • 파일 이름: 서버가 이름을 풀지 않으면 내려받은 파일이 %EA%B3%84%EC%95%BD%EC%84%9C.pdf처럼 저장됩니다.

코드와 깨진 글자가 함께 있을 때

두 번 깨진 글도 있습니다. %C3%87%C3%91%C2%B1%C3%9B는 한글을 잘못 읽어 깨진 글자를 다시 인코딩한 것입니다. Mojibuster는 먼저 코드를 풀고, 이어서 EUC-KR 한글 깨짐을 고칩니다. 결과는 다시 한글입니다.

이 페이지에서는 코드도 변환이 이미 켜져 있습니다. HTML 코드(한), 메일 코드(=ED=95=9C), 프로그램의 이스케이프(\uD55C)도 함께 바꿉니다. 다른 깨짐은 글자 깨짐이란을 보세요.

엑셀, JavaScript, Python, PHP에서 직접 풀기

  • 엑셀: 인코딩 함수(영문판 ENCODEURL)는 있지만 디코딩 함수는 없습니다. 열을 복사해 여기에 붙여 넣고 결과를 다시 가져오는 것이 가장 쉽습니다. 엑셀 한글 깨짐도 참고하세요.
  • JavaScript: decodeURIComponent("%ED%95%9C")은 한을 돌려줍니다.
  • Python: urllib.parse.unquote("%ED%95%9C"). 폼의 +를 띄어쓰기로 바꾸려면 unquote_plus를 쓰세요.
  • PHP: rawurldecode(), 폼 데이터에는 urldecode().

자주 묻는 질문

%ED%95%9C은 무슨 뜻인가요?

한을 URL 인코딩한 것입니다. UTF-8 세 바이트 ED, 95, 9C에 각각 %가 붙었습니다. %EA%B8%80은 글입니다.

%20은 무슨 뜻인가요?

띄어쓰기입니다. 폼 데이터에서는 +를 쓰기도 합니다. 일반 글의 +는 진짜 더하기 기호일 수 있어서 Mojibuster는 그대로 둡니다.

링크가 업로드되나요?

아니요. 변환은 모두 브라우저 안에서 이루어집니다. 토큰이나 이메일 주소가 든 링크도 기기 밖으로 나가지 않습니다.

왜 100%는 바뀌지 않나요?

실제 특수 문자가 되는 코드만 바꾸기 때문입니다. 100%, 50 %, 일반 글 속의 %20 하나는 그대로 둡니다.

관련 안내