복사한 글에 보이지 않는 공백·글자가 섞여있을 때 해결법
웹에서 복사한 글에 이상한 공백이 생기고 글자 수가 안 맞는 이유를 설명합니다. 눈에 보이지 않는 제로폭 공백, NBSP 등 유니코드 문자가 원인입니다. 이들을 찾아내고 한번에 제거하는 방법을 알아봅니다.
분명히 지웠는데, 공백이 자꾸 생깁니다
웹사이트나 PDF에서 글을 복사해 붙여넣었는데 뭔가 이상합니다. 눈으로 보기엔 아무 문제가 없습니다. 그런데 글자 수를 세면 생각보다 많이 나옵니다. 특정 단어로 검색(Ctrl+F)을 하면 결과가 없다고 나옵니다. 문장 중간에서 백스페이스 키를 눌렀는데, 커서만 움직이고 글자는 지워지지 않는 경험도 합니다.
맞습니다. 텍스트에 눈에 보이지 않는 '유령 글자'가 섞여 들어간 것입니다. 아무리 지우려고 해도 보이지 않으니 답답합니다. 특히 자기소개서처럼 글자 수 제한이 중요한 글을 쓸 때 이런 현상은 치명적입니다.
원인: 눈에 보이지 않는 '유령 공백' 때문입니다
이런 문자들은 각자의 용도가 있지만, 이메일, 메신저, 코드 편집기 등 다른 환경으로 복사되는 순간 '쓰레기 데이터'가 되어 문제를 일으킵니다.
| 종류 | 표기 | 유니코드 | 주요 역할 및 문제점 |
|---|---|---|---|
| 일반 공백 (Space) | ` ` (보임) | U+0020 | 가장 일반적인 띄어쓰기 문자입니다. 문제가 없습니다. |
| 붙여쓰기 공백 (NBSP) | ` ` (보임) | U+00A0 | Non-Breaking Space. 이 공백 위치에서는 줄바꿈이 일어나지 않습니다. '100 원'처럼 단위가 다음 줄로 넘어가는 것을 막기 위해 씁니다. 하지만 일반 공백과 다른 문자라 검색이나 정렬 시 문제를 일으킵니다. |
| 폭 없는 공백 (ZWSP) | (안 보임) | U+200B | Zero-Width Space. 이름처럼 폭이 0이라 눈에 보이지 않습니다. 주로 긴 영어 단어나 URL 중간에 삽입해, 줄바꿈이 필요할 때 그 위치에서 자연스럽게 넘어가도록 유도하는 역할을 합니다. 커서 움직임을 방해하고 글자 수를 늘리는 주범입니다. |
| 전각 공백 | ` ` (넓게 보임) | U+3000 | 한글 한 글자와 같은 폭을 차지하는 넓은 공백입니다. 일반 공백과 시각적으로 구분되지만, 프로그램에 따라 다른 문자로 취급되어 문제를 일으킬 수 있습니다. |
| BOM (바이트 순서 표시) | (안 보임) | U+FEFF | 원래는 텍스트 파일의 인코딩 방식을 알려주는 신호지만, 텍스트를 복사하는 과정에서 맨 앞에 딸려 들어와 보이지 않는 글자로 남기도 합니다. |
내 글 속 유령 공백, 어떻게 찾아낼까요?
보이지 않는 문자를 눈으로 찾는 것은 불가능합니다. 그래서 우리는 도구의 힘을 빌려야 합니다. 텍스트를 구성하는 유니코드 값을 직접 보여주는 도구를 사용하면, 숨어있는 문자들이 어떤 것인지 정체를 드러냅니다.
아래 '텍스트 ↔ 유니코드 변환기'에 문제가 되는 글을 붙여넣어 보십시오. '글자별 상세' 표에 각 글자의 유니코드 코드포인트가 표시됩니다. 만약 목록에 'U+200B'나 'U+00A0' 같은 코드가 보인다면, 바로 그 녀석들이 문제의 원인입니다.
가장 쉬운 해결책: 텍스트 정리기로 한번에 제거하기
텍스트 정리기는 이 외에도 여러 줄의 빈 줄을 하나로 합치거나, 각 줄의 시작과 끝에 붙은 불필요한 공백을 제거하는 등 웹에서 복사한 글을 다듬는 데 유용한 기능들을 함께 제공합니다.
- 문제가 있는 텍스트를 전부 복사합니다.
- 아래 '텍스트 정리기' 도구의 왼쪽 '원본' 칸에 붙여넣습니다.
- 오른쪽 '정리 결과'에 깨끗해진 텍스트가 즉시 나타납니다. '정리 항목'을 보면 `제로 폭 문자·BOM 제거`와 `NBSP·특수 공백 → 일반 공백` 옵션이 기본으로 켜져 있어, 붙여넣는 순간 모든 유령 공백이 사라집니다.
- 오른쪽 상단의 '복사' 버튼을 눌러 깔끔해진 텍스트를 가져다 쓰면 됩니다.
정리 후, 진짜 글자 수 확인하기
유령 공백을 모두 제거했다면 이제 글자 수가 정확하게 맞을 겁니다. 자기소개서나 트위터처럼 글자 수 제한이 있는 플랫폼에 글을 올리기 전에 최종적으로 확인하는 것이 좋습니다.
정리된 텍스트를 '글자수 세기' 도구에 붙여넣어 보십시오. '글자 수 (공백 포함)'과 '글자 수 (공백 제외)'를 통해 제출하려는 곳의 기준에 맞춰 정확한 글자 수를 확인할 수 있습니다.
또한 '문자 구성 비율' 표를 보면 내 글에 한글, 영문, 숫자, 공백, 특수문자가 각각 몇 개나 있는지 한눈에 볼 수 있습니다. 만약 정리기를 썼는데도 특수문자 개수가 이상하게 많다면, 아직 제거되지 않은 또 다른 종류의 특수 기호가 남아있다는 의미일 수 있습니다.
자주 묻는 질문
웹사이트는 대체 왜 이런 보이지 않는 문자를 쓰나요?
주로 디자인과 기술적인 이유 때문입니다. 예를 들어, 폭 없는 공백(U+200B)은 아주 긴 이메일 주소나 URL이 화면 밖으로 넘어가지 않도록, 자연스럽게 줄바꿈될 지점을 알려주는 역할을 합니다. 붙여쓰기 공백(U+00A0)은 '오후 5시' 같은 표현이 '오후'와 '5시'로 쪼개져 다른 줄에 표시되는 것을 막아줍니다. 즉, 웹 환경에서는 유용한 기능이지만, 그 맥락을 벗어나 복사될 때 문제를 일으킵니다.
엑셀이나 워드의 '찾아 바꾸기' 기능으로도 지울 수 없나요?
일부는 가능하지만 매우 번거롭습니다. 붙여쓰기 공백(NBSP)의 경우, 운 좋게 해당 공백만 복사해서 '찾을 내용'에 붙여넣으면 찾아질 때도 있습니다. 하지만 폭 없는 공백은 보이지도, 선택되지도 않아 이 방법이 통하지 않습니다. 일부 고급 편집기는 유니코드 코드로 문자를 찾는 기능을 지원하지만(예: `^u200B`), 일반 사용자에게는 너무 복잡한 방법입니다. 전문 클리너 도구를 쓰는 것이 훨씬 간단하고 확실합니다.
이것도 '인코딩 깨짐' 현상의 일종인가요?
아닙니다. 다른 문제입니다. 인코딩 깨짐('한글'이 '한글' 처럼 보이는 현상)은 UTF-8로 저장된 파일을 EUC-KR 방식으로 여는 등, 문자 코드를 해석하는 규칙이 잘못 적용되어 글자 자체가 완전히 망가진 상황을 말합니다. 반면 '유령 공백' 문제는, 글자는 깨지지 않았지만 눈에 보이지 않는 '정상적인' 유니코드 문자가 원치 않게 포함된 상황입니다.