텍스트 공백·줄바꿈 정리기

여기저기 흩어진 공백, 빈 줄, 탭 문자를 한 번에 정리해 깔끔한 텍스트로 만들어보세요.

이 도구가 해결하는 문제

PDF, 웹페이지, 메신저, 워드프로세서에서 복사한 글은 눈에 보이는 문장 말고도 줄 끝 공백, 문장 사이의 여러 칸 공백, 탭, 문단마다 끼어든 빈 줄, 그리고 보이지 않는 특수 공백이 따라옵니다. 이런 찌꺼기는 블로그 편집기나 CMS에서 간격을 어긋나게 하고, 엑셀·코드·검색 비교에서 "같아 보이는데 다른 문자열"이라는 골치 아픈 결과를 만들기도 합니다. 이 도구는 옵션을 골라 한 번에 정리하고 글자수가 얼마나 줄었는지 보여줍니다.

옵션과 적용 순서

옵션은 아래 순서로 적용됩니다. 순서를 알면 결과가 왜 그렇게 나오는지 예측할 수 있습니다.

순서처리세부 동작
1특수 공백 정리NBSP·전각 공백 등은 일반 공백으로, 폭 없는 공백은 삭제
2탭 → 공백탭 문자를 공백 1칸으로
3줄 나누기CRLF, CR, LF 모두 한 줄 구분으로 인식
4줄 앞뒤 공백 제거trim: 일반 공백, 탭, NBSP, 전각 공백 등 제거
5연속 공백 줄이기일반 공백(U+0020)만 대상
6빈 줄 처리"모두 제거"가 켜져 있으면 "연속 빈 줄 줄이기"는 무시
7한 줄로 합치기줄을 공백 1칸으로 이어 붙이고 앞뒤 공백 제거

주의할 점 하나는 "연속된 공백 줄이기"가 일반 공백(스페이스)에만 작동한다는 것입니다. 탭이나 전각 공백이 섞여 있으면 먼저 탭 변환 또는 숨은 공백 정리 옵션을 함께 켜야 연속 공백으로 합쳐집니다. 반면 줄 앞뒤 공백 제거는 NBSP나 전각 공백도 함께 지웁니다.

입력 → 출력 예시 (코드로 계산한 값)

아래 표는 이 도구와 같은 로직으로 계산한 결과입니다. 공백은 ·, 줄바꿈은 ↵, 탭은 →, NBSP는 ⍽, 전각 공백은 □로 표시했습니다. (폭 없는 공백은 화면에 보이지 않아 표시되지 않습니다.)

경우옵션원본결과글자수
PDF·메신저 복사본 기본 정리줄 앞뒤 + 연속 공백 + 빈 줄 제거··안녕하세요.···오늘은··↵···날씨가····좋네요.··↵↵↵내일·봐요··안녕하세요.·오늘은↵날씨가·좋네요.↵내일·봐요43 → 25
문단 구분 유지줄 앞뒤 + 연속 빈 줄을 한 줄로첫·문단입니다.↵↵↵↵둘째·문단입니다.↵···↵셋째첫·문단입니다.↵↵둘째·문단입니다.↵↵셋째28 → 23
한 줄로 합치기줄바꿈 없애고 합치기line·one↵line·two↵↵line·threeline·one·line·two·line·three29 → 28
숨은 공백 정리특수 공백 정리 + 연속 공백 줄이기A⍽⍽B□C​DA·B·CD8 → 6

두 번째 예시에서 " " 만 들어 있는 줄은 줄 앞뒤 공백 제거 후 빈 줄로 바뀌어 연속 빈 줄 규칙에 함께 걸립니다. 그래서 눈에 보이는 빈 줄과 공백만 있는 줄을 구별하지 않고 한 줄로 합쳐집니다. 네 번째 예시처럼 NBSP와 전각 공백은 눈으로 구분하기 어려운데, 정리 전에는 "A B" 사이가 일반 공백 2칸이 아니라 NBSP 2칸이라 일반 공백 줄이기가 통하지 않았을 것입니다.

문자 종류별로 어떤 옵션이 듣는가

"공백을 정리했는데도 안 지워진다"는 문의의 대부분은 지우려는 문자가 일반 공백(U+0020)이 아니기 때문입니다. 아래 표는 문자 하나를 이 도구의 정리 함수에 직접 넣어 시험한 결과입니다. 왼쪽부터 줄 끝에 붙었을 때 "줄 앞뒤 공백 제거"가 지우는지, 문자가 두 개 연달아 있을 때 "연속 공백 줄이기"만 켰을 때와 "숨은 공백 정리"까지 함께 켰을 때 어떻게 되는지를 보여 줍니다.

문자줄 끝일 때 앞뒤 제거2개 연속, 줄이기만2개 연속, 숨은 공백 정리 + 줄이기
U+0020 일반 공백제거됨공백 1칸공백 1칸
U+0009 탭제거됨2개 그대로2개 그대로
U+00A0 NBSP(줄바꿈 금지 공백)제거됨2개 그대로공백 1칸
U+3000 전각 공백제거됨2개 그대로공백 1칸
U+2003 em 공백제거됨2개 그대로공백 1칸
U+200B 폭 없는 공백남음2개 그대로삭제됨
U+FEFF BOM(폭 없는 공백)제거됨2개 그대로삭제됨
U+200D ZWJ(이모지 연결)남음2개 그대로2개 그대로

표에서 눈여겨볼 곳은 폭 없는 공백(U+200B)입니다. 줄 앞뒤 제거로는 지워지지 않고 연속 공백 줄이기에도 걸리지 않아, 숨은 공백 정리를 켜야 비로소 사라집니다. 반대로 U+200D는 이모지나 일부 문자 조합에 쓰이므로 이 도구가 일부러 건드리지 않습니다. 또 자바스크립트의 줄 앞뒤 제거는 NBSP와 전각 공백, BOM도 지우기 때문에, 줄 끝에 붙은 NBSP는 숨은 공백 정리 없이도 사라지지만 단어 사이에 낀 NBSP는 그대로 남습니다.

이 도구로 해결되는 구체적인 장면

메신저 대화록을 보고서에 붙일 때. 말풍선 사이마다 빈 줄이 끼어 복사된 메신저 대화를 기본 옵션(줄 앞뒤 + 연속 공백 + 빈 줄 모두 제거)으로 정리하면 빈 줄이 모두 사라지고 말풍선마다 한 줄씩 남습니다. "네  알겠습니다" 같은 문장 속 이중 공백도 한 칸으로 줄어듭니다. 다만 메신저가 만든 시각 표시나 이름 부분은 지우지 않으므로 필요한 만큼은 직접 다듬어야 합니다.

엑셀에서 이름이 일치하지 않을 때. 단어 사이에 NBSP가 들어간 "홍 길동"은 눈으로는 "홍 길동"과 같아 보이지만 문자열 비교에서는 다릅니다. 숨은 공백 정리를 켠 뒤 붙여넣으면 NBSP가 일반 공백으로 바뀌어 비교와 검색 함수가 일치합니다. 줄 끝에 붙은 NBSP는 줄 앞뒤 제거만으로도 지워진다는 점을 위 표에서 확인할 수 있습니다.

PDF 논문 문장 복사. 줄 끝마다 개행이 들어간 문장 "인공지능 기술은 빠르게 발전하고 / 있으며 다양한 분야에 / 적용되고 있다."는 한 줄로 합치기를 켜면 한 문장으로 이어집니다. 문단 사이 빈 줄도 공백 1칸이 되어 두 문단이 붙으므로, 문단을 따로 두려면 빈 줄 줄이기만 쓰고 합치기는 끄세요.

탭으로 나뉜 표 한 줄 요약. "이름 나이" 같은 탭 구분 머리글은 탭을 공백으로 바꾸면 열 구분이 공백으로 바뀌어 엑셀에 붙여 넣어도 칸이 나뉘지 않습니다. 반대로 엑셀로 되붙여넣을 표라면 탭을 그대로 두어야 열이 나뉘므로 탭 변환은 끄세요.

정리 후에 확인할 것

결과를 복사하기 전에 줄 수와 글자수 칩을 한 번 봅니다. 줄 수가 예상보다 적으면 빈 줄 모두 제거나 한 줄로 합치기가 켜져 있는지 확인하고, 글자수가 거의 변하지 않았는데 간격이 이상하면 숨은 공백 알림 문구가 떠 있는지 봅니다. 이 도구는 일반 공백이 아닌 특수 공백을 발견했는데 숨은 공백 정리가 꺼져 있으면 그 개수를 알려 줍니다. 붙여넣을 곳(블로그 편집기, 엑셀, 코드 편집기)마다 줄바꿈과 공백을 다루는 방식이 다르므로 결과를 한 번 미리 붙여 보고 확정하는 것이 안전합니다. 이 도구는 공백과 줄바꿈만 다루며 맞춤법, 띄어쓰기 교정, 문장 의미 정리는 하지 않습니다.

엣지 케이스와 한계

상황별 추천 설정

검증하는 방법

정리 결과가 의도대로인지 확인하려면 결과의 글자수 변화와 줄 수를 원본과 비교하세요. 예를 들어 기본 옵션으로 정리한 첫 번째 예시는 43자에서 25자로, 5줄(빈 줄 2개 포함)에서 3줄로 줄어듭니다. 줄인 글자수가 예상보다 훨씬 크다면 들여쓰기가 의미 있는 텍스트이거나 한 줄로 합치기가 켜진 경우일 수 있습니다. 반대로 줄어든 글자가 거의 없는데 간격이 그대로라면 NBSP나 전각 공백이 원인일 가능성이 높으니 숨은 공백 정리를 켜 보세요. 원본은 입력창에 그대로 남아 있으므로 옵션을 바꿔 가며 여러 번 시험해도 안전합니다.

개인정보와 보안

정리는 브라우저에서 실행되는 스크립트가 입력창의 값을 읽어 문자열을 치환하고 결과창에 쓰는 방식이며, 입력 내용을 서버로 보내는 코드는 없습니다. 입력·결과는 페이지를 새로고침하면 사라지고 사이트에 저장되지 않습니다. 복사 버튼은 클립보드에 결과를 쓰므로, 민감한 내용은 작업 후 클립보드를 비우는 것이 좋습니다.

관련 도구

자주 묻는 질문

한글이나 특수문자도 정리할 수 있나요?

네. 공백·탭·줄바꿈과 몇 가지 숨은 공백류만 바꾸고 한글, 영문, 숫자, 기호, 이모지는 그대로 둡니다.

정리 전 원본은 어디에 저장되나요?

어디에도 저장되지 않습니다. 브라우저 안에서만 처리되고 서버로 전송하지 않습니다. 새로고침하면 사라지므로 원본이 중요하면 미리 다른 곳에 복사해 두세요.

빈 줄 모두 제거와 연속 빈 줄 줄이기를 같이 켜면요?

"빈 줄 모두 제거"가 우선이어서 빈 줄이 전부 사라집니다. 문단 구분을 남기고 싶다면 모두 제거는 끄고 줄이기만 켜세요.

줄바꿈은 지웠는데 글 사이에 여전히 간격이 있어요.

일반 공백이 아닌 NBSP·전각 공백일 수 있습니다. 숨은 공백 정리와 연속 공백 줄이기를 함께 켜 보세요. 줄 사이 간격이라면 빈 줄 처리 옵션을 확인하세요.

글자수가 서비스와 다르게 나와요.

이 도구는 UTF-16 길이로 세고, 줄바꿈을 줄 수에 따라 1~2자로 세는 서비스와 차이가 납니다. 공백 포함 여부와 이모지 계산 방식도 서비스마다 다릅니다.

윈도우에서 복사한 글의 글자수가 왜 줄어드나요?

윈도우 줄바꿈(CRLF)은 두 글자인데 이 도구는 모든 줄바꿈을 LF 한 글자로 통일합니다. 예를 들어 "가, 나, 다" 세 줄은 CRLF일 때 7자이고 정리 후 5자가 됩니다.

탭으로 구분된 표를 붙여넣었는데 열이 사라졌어요.

"탭을 공백 1칸으로 바꾸기"가 켜져 있으면 열 구분이 일반 공백으로 바뀝니다. 표 형태를 유지해야 하면 이 옵션을 끄세요. 기본값에서는 꺼져 있습니다.

들여쓰기가 중요한 코드에도 쓸 수 있나요?

줄 앞뒤 공백 제거와 연속 공백 줄이기를 끄고 빈 줄 옵션만 쓰는 것이 안전합니다. 파이썬이나 YAML처럼 들여쓰기가 문법인 텍스트는 이 두 옵션 때문에 구조가 바뀔 수 있습니다.

PDF에서 복사한 한글 단어 중간이 끊어졌어요. 자동으로 이어 주나요?

이어 주지 않습니다. 한 줄로 합치기는 줄바꿈을 공백 1칸으로 바꾸므로, 단어 중간에서 줄이 바뀐 곳에는 공백이 생깁니다. 합친 뒤 결과를 읽으며 해당 부분은 직접 고쳐 주세요.

이모지가 깨지거나 사라지지 않나요?

이모지 자체는 건드리지 않습니다. 이모지를 이어 붙이는 ZWJ(U+200D)도 의도적으로 남기므로 가족, 직업 이모지 같은 조합 이모지가 분리되지 않습니다. 글자수만 이모지를 2로 세는 방식입니다.

옵션을 하나도 켜지 않고 정리하면 어떻게 되나요?

줄바꿈 형식만 LF로 통일되고 나머지는 그대로 출력됩니다. 정리 전후 글자수를 비교하는 용도나, 숨은 공백이 몇 개 있는지 알림 문구로 확인하는 용도로 쓸 수 있습니다.