텍스트 바꾸기 도구가 하는 일
찾아 바꾸기는 가장 쓸모 있는 편집 기능 가운데 하나이지만 늘 손에 닿는 것은 아닙니다. 웹 양식, 메신저, 콘텐츠 관리 시스템, 바꾸기 기능이 아예 없는 일반 텍스트 칸에서 작업할 때가 그렇습니다. 이 텍스트 바꾸기 도구에 텍스트를 붙여넣고, 무엇을 바꿀지 알려 준 다음, 결과를 복사해 원래 자리에 넣으면 됩니다.
일치하는 부분을 한 번에 모두 바꾸고, 몇 군데를 바꿨는지 보여 주며, 입력하는 동안 결과가 바로 갱신되므로 설정마다 어떤 효과가 있는지 즉시 확인할 수 있습니다. 문자열 치환이 필요한 개발 작업에도 쓸 수 있습니다.
사용 방법
- 텍스트 입력 칸에 텍스트를 붙여넣습니다.
- 바꾸고 싶은 단어, 문구, 기호를 찾을 내용에 입력합니다.
- 새 텍스트를 바꿀 내용에 입력합니다. 비워 두면 일치하는 부분이 모두 지워집니다.
- 필요한 옵션을 고릅니다. 대소문자 구분, 단어 단위로만, 정규식 사용이 있습니다.
- 오른쪽에서 결과를 확인한 뒤 복사 또는 다운로드를 누릅니다.
도구를 열면 짧은 메모에서 “월요일”을 찾아 “화요일”로 바꾸는 예시가 들어 있어, 직접 텍스트를 붙여넣기 전에 동작 방식을 볼 수 있습니다.
옵션
대소문자 구분을 켜면 대소문자를 구별해서 찾습니다. 끄면 “hello”가 Hello, hello, HELLO와 모두 일치합니다. 켜면 입력한 형태 그대로만 바뀝니다.
단어 단위로만은 찾는 내용이 온전한 단어로 있을 때만 일치시킵니다. 일치하는 부분 바로 앞이나 뒤에 문자, 숫자, 언더바가 있으면 안 됩니다. 그래서 “cat”이 “category”의 앞부분을 바꾸지 않습니다. 한글도 문자로 취급하므로 “사과를”, “사과는”처럼 조사가 바로 붙은 형태는 일치하지 않습니다.
정규식 사용은 찾을 내용 칸을 일반 텍스트가 아니라 패턴으로 다룹니다. 정규식으로는 아무 숫자, 아무 단어, 특정 문자 집합, 줄 맨 앞의 텍스트 등을 찾을 수 있습니다. 이 모드에서는 바꿀 내용에 다음을 쓸 수 있습니다.
- 패턴의 괄호로 잡아 둔 텍스트는
$1,$2등 - 일치한 전체는
$& - 이름 붙은 그룹은
$<name> - 줄바꿈은
\n, 탭은\t
닫히지 않은 괄호처럼 패턴에 실수가 있으면 아무것도 바꾸지 않고 알려 줍니다.
예시
아래 결과는 모두 이 도구로 만든 것입니다.
| 텍스트 | 찾을 내용 | 바꿀 내용 | 옵션 | 결과 |
|---|---|---|---|---|
| Our team meets on Monday. Monday meetings start at 9am. | Monday | Tuesday | 없음 | Our team meets on Tuesday. Tuesday meetings start at 9am. |
| colour, Colour, COLOUR | colour | color | 없음 | color, color, color |
| colour, Colour, COLOUR | colour | color | 대소문자 구분 | color, Colour, COLOUR |
| The cat sat in the category aisle. | cat | dog | 없음 | The dog sat in the dogegory aisle. |
| The cat sat in the category aisle. | cat | dog | 단어 단위로만 | The dog sat in the category aisle. |
| Smith, John | (\w+), (\w+) |
$2 $1 |
정규식 | John Smith |
| Order 2024-03-15 | (\d{4})-(\d{2})-(\d{2}) |
$3/$2/$1 |
정규식 | Order 15/03/2024 |
| Call 555 0101 | \d |
# | 정규식 | Call ### #### |
| red, green, blue | , |
\n |
정규식 | red, green, blue가 세 줄로 나뉨 |
“dogegory” 줄을 보면 단어 단위로만이 왜 필요한지 알 수 있습니다. 이 옵션이 없으면 해당 글자가 나오는 곳은 모두 바뀝니다.
한국어 텍스트 예시
한국어 텍스트도 이 도구로 직접 실행해 확인했습니다.
| 텍스트 | 찾을 내용 | 바꿀 내용 | 옵션 | 결과 |
|---|---|---|---|---|
| 회의는 월요일에 합니다. 월요일 회의는 9시에 시작합니다. | 월요일 | 화요일 | 없음 | 회의는 화요일에 합니다. 화요일 회의는 9시에 시작합니다. |
| 사과를 먹었다. 사과는 맛있다. | 사과 | 귤 | 없음 | 귤를 먹었다. 귤는 맛있다. |
| 홍, 길동 | (\w+), (\w+) |
$2 $1 |
정규식 | 홍, 길동 (일치 없음) |
| 홍, 길동 | ([가-힣]+), ([가-힣]+) |
$2 $1 |
정규식 | 길동 홍 |
| 2024-03-15 | (\d{4})-(\d{2})-(\d{2}) |
$1년 $2월 $3일 |
정규식 | 2024년 03월 15일 |
| 연락처: 010-1234-5678 | \d |
* | 정규식 | 연락처: ***-****-**** |
- 조사는 자동으로 바뀌지 않습니다. 받침 없는 “사과”를 받침 있는 “귤”로 바꾸면 “귤를”, “귤는”이 됩니다. 이럴 때는 “사과를”을 “귤을”로, “사과는”을 “귤은”으로 나눠서 바꿉니다.
\w는 한글과 일치하지 않습니다. 이 도구는 JavaScript 정규식을 쓰는데, 여기서\w는 영문, 숫자, 언더바만 가리킵니다. 한글 단어는[가-힣]+로, 모든 언어의 문자는\p{L}+로 찾습니다.
자주 쓰는 정규식
| 찾을 것 | 패턴 |
|---|---|
| 아무 숫자 한 개 | \d |
| 정수 | \d+ |
| 공백 두 개 이상 | {2,} |
| 빈 줄 | ^\s*$ (주의해서 사용) |
| 괄호 안의 텍스트 | \([^)]*\) |
| 이메일 주소 (간단한 형태) | [\w.+-]+@[\w-]+\.[\w.]+ |
| “re”로 시작하는 단어 | \bre\w* |
| 한글 단어 | [가-힣]+ |
| 모든 언어의 단어 | \p{L}+ |
패턴은 JavaScript 규칙을 따르며, 대부분의 프로그래밍 언어와 코드 편집기에서 쓰는 규칙과 같습니다.
팁
- 긴 문서를 붙여넣기 전에 짧은 예시로 먼저 시험해 봅니다. 정규식을 쓸 때는 특히 그렇습니다.
- 이름을 바꿀 때는 단어 단위로만을 켭니다. 이 옵션 없이 “Al”을 “Alan”으로 바꾸면 “Alice”와 “also”까지 바뀝니다.
- 여러 번 이어서 바꿉니다. 결과를 복사해 텍스트 입력에 다시 붙여넣고 찾을 내용과 바꿀 내용을 새로 입력합니다.
- 자주 하는 정리 작업은 전용 도구가 있습니다. 언더바 제거는 snake_case 이름을 단어로 바꿉니다. 엠 대시 제거는 여러 종류의 대시 문자를 한꺼번에 처리합니다. 중복 줄 제거는 반복된 줄을 지웁니다.
한계
- 바꾸기는 텍스트 전체에 한 번에 적용됩니다. 하나씩 넘어가며 바꾸는 “다음 바꾸기” 모드는 없으므로 안내 문구의 개수를 확인합니다.
- 입력 칸이 일반 텍스트만 담기 때문에 굵게나 링크 같은 서식은 유지되지 않습니다.
- 아주 긴 텍스트는 입력을 잠시 멈춘 뒤에 처리됩니다.
다른 방법으로 찾아 바꾸기
Microsoft Word: Ctrl+H를 누릅니다. 자세히 버튼을 누르면 대/소문자 구분, 단어 단위로, 와일드카드 사용 옵션이 나타납니다. 와일드카드는 Word 고유의 패턴 문법입니다.
Google 문서: Ctrl+H를 누르거나 수정 메뉴에서 찾기 및 바꾸기를 고릅니다. 대소문자 구분과 정규식을 지원합니다.
Excel과 Google 스프레드시트: Ctrl+H로 여러 셀에 걸쳐 바꿀 수 있습니다. 수식으로는 =SUBSTITUTE(A1,"old","new")를 씁니다.
코드: JavaScript에서는 text.replaceAll('old', 'new')로 일반 텍스트를, text.replace(/pattern/g, 'new')로 정규식을 바꿉니다. Python에서는 text.replace('old', 'new')나 re.sub(pattern, 'new', text)를 씁니다.