텍스트 포맷팅이 시간을 잡아먹는 이유
텍스트 포맷팅은 한두 건이면 별것 아닌데, 대량으로 하면 이야기가 달라집니다. 파일명 100개의 대소문자를 통일하거나, 붙여넣은 데이터에 섞인 탭과 이중 공백을 정리하거나, 구분자를 바꾸거나. 건건이는 몇 초지만 모이면 되돌릴 수 없는 시간을 잡아먹습니다.
좋은 소식: 흔한 텍스트 포맷팅 작업은 거의 전부 자동화하거나 획기적으로 빠르게 할 수 있습니다. 텍스트 작업 방식을 바꿔줄 10가지 기법을 소개합니다.
1. 대소문자 일괄 변환
제목을 하나하나 대문자로 바꾸거나 camelCase와 snake_case를 왔다 갔다 하는 건 지루하고 실수하기 쉽습니다. 전용 변환 도구를 쓰세요.
Title Case는 주요 단어의 첫 글자를 대문자로, Sentence case는 첫 단어만 대문자로, UPPER CASE와 lower case는 전체를 변환합니다. camelCase↔snake_case 변환은 단어 경계를 자동 감지합니다.
핵심: 대소문자를 바꾸려고 텍스트를 다시 타이핑하지 마세요. 붙여넣고, 변환하고, 복사 — 텍스트 길이에 상관없이 몇 초면 끝납니다.
2. 정규식 찾아 바꾸기
일반 찾아 바꾸기는 정확한 문자열만 처리하지만, 정규식 찾아 바꾸기는 패턴을 처리합니다. 차원이 다릅니다.
날짜를 MM/DD/YYYY에서 YYYY-MM-DD로 바꾸고 싶다면? 정규식 한 줄이면 됩니다: `(\d{2})/(\d{2})/(\d{4})`를 찾아서 `$3-$1-$2`로 치환. 모든 줄을 따옴표로 감싸고 싶다면? `^(.+)$`를 `"$1"`로 치환. HTML 태그를 전부 지우고 싶다면? `<[^>]+>`를 빈 문자열로 치환.
기초적인 정규식만 알아도 별도 스크립트 없이는 불가능한 포맷팅 작업을 처리할 수 있습니다.
3. 공백 정규화
웹사이트, PDF, 이메일에서 복사한 텍스트에는 보이지 않는 포맷 오염이 따라옵니다. 줄바꿈 없는 공백, 너비 없는 문자, 탭과 스페이스 혼용, 줄 끝의 불필요한 공백, 일관되지 않는 줄바꿈 문자 등.
공백 정규화 도구는 이 모든 것을 한 번에 정리합니다. 연속 공백을 하나로 합치고, 탭을 스페이스로(혹은 반대로) 바꾸고, 줄 끝 공백을 제거하고, 줄바꿈 문자를 통일하고, 문제를 일으키는 너비 없는 문자를 삭제합니다.
4. 중복 줄 제거
붙여넣은 데이터에 중복 항목이 있는 경우가 잦습니다. 수백, 수천 줄을 눈으로 확인하는 건 비현실적입니다. 중복 제거 도구를 쓰면 순식간에 완료됩니다.
고급 중복 제거는 대소문자 무시, 공백 트리밍 후 비교, 첫 번째/마지막 항목 유지 등을 지원합니다. 삭제 전 중복 항목만 하이라이트해서 검토할 수 있는 도구도 있습니다.
5. 열 추출과 재배치
탭이나 쉼표로 구분된 데이터의 열 순서를 바꿔야 할 때가 있습니다. CSV 열 순서가 잘못되었거나, 20개 열 중 1, 3, 7열만 필요하거나.
텍스트 기반 열 도구를 쓰면 원하는 열만 골라서 원하는 순서로 뽑을 수 있습니다. 단순한 구조 변경에 스프레드시트를 여는 번거로움을 피할 수 있습니다.
6. 목록 서식 변환
목록 형식 변환은 생각보다 자주 합니다. 쉼표로 구분된 목록을 한 줄에 하나씩으로, 세로 목록을 JSON 배열로, 번호 매긴 목록에서 번호를 떼거나.
목록 전용 도구로 처리하면: 구분자로 나누기, 다른 구분자로 합치기, 각 항목에 접두사/접미사 추가, 알파벳순·숫자순 정렬, 역순 정렬, 순차 번호 매기기를 깔끔하게 할 수 있습니다.
7. 줄바꿈 래핑과 해제
고정 폭 줄바꿈(hard wrap)은 이메일, 코드 주석, 일반 텍스트 문서에서 흔합니다. 줄바꿈을 풀어서 연속 텍스트로 만들거나(unwrap), 다른 폭으로 다시 감싸는 것(rewrap)은 자주 필요한 작업입니다.
언래핑은 문단 안의 줄을 합치되 문단 구분은 유지합니다. 리래핑은 새로운 줄 폭에 맞춰 텍스트를 재배치합니다. 수작업으로는 악몽이지만 도구를 쓰면 순식간입니다.
8. 인코딩 변환
외부에서 받은 텍스트가 잘못된 인코딩으로 해석되어 글자가 깨지는 경우가 있습니다. 인코딩 변환 도구로 원본 인코딩을 파악하고 원하는 인코딩으로 깔끔하게 바꿀 수 있습니다.
관련 작업: HTML 엔티티 이스케이프/언이스케이프, URL 인코딩, 유니코드 이스케이프 시퀀스. `&`가 `&` 대신, `%20`이 스페이스 대신 보이는 텍스트는 언이스케이핑이 필요합니다.
9. 숫자와 데이터 포맷
로캘별 숫자 형식 전환 — 소수점에 점 또는 쉼표 사용, 천 단위 구분자, 진법 변환 — 은 데이터 처리에서 자주 나옵니다.
전화번호 형식 통일, 날짜 형식 표준화, 숫자 앞 0 채우기 같은 작업도 포맷팅 도구를 쓰면 수작업 대비 시간이 크게 절약됩니다.
10. 텍스트 비교(Diff)
두 버전의 텍스트에서 뭐가 달라졌는지 찾아야 할 때, diff 도구가 줄 단위로 추가·삭제·변경 사항을 하이라이트해 줍니다. 양쪽을 나란히 놓고 읽는 것보다 빠르고 정확합니다.
Diff는 코드만의 도구가 아닙니다. 계약서 수정 사항 비교, 설정 파일 변경 확인, 편집된 원고 검토 — 자동 차이 감지가 모두 도움이 됩니다.
텍스트 포맷팅 워크플로 만들기
모든 기법의 공통점은 같습니다: 글자 하나하나 수작업으로 고치지 마세요. 패턴을 파악하고, 변환을 적용하고, 다음으로 넘어가세요. 수동 포맷팅에 쓰는 매 분은 진짜 판단이 필요한 일에 쓸 수 있는 시간입니다.
바로 꺼내 쓸 수 있는 텍스트 포맷팅 도구 모음을 구축하세요. 북마크하고, 단축키를 익히고, 반사적으로 사용하세요. 절약되는 시간은 금세 쌓입니다 — 작업당 몇 분이 주당 몇 시간이 됩니다.