
엑셀 REGEX 함수 완벽 가이드: REGEXEXTRACT/REGEXREPLACE/REGEXTEST로 10분 컷 데이터 정리
엑셀 REGEX 함수와 Copilot “Clean Data”를 함께 쓰면 초보자도 10분 안에 텍스트 데이터를 표준화할 수 있습니다. 이 글의 샘플을 그대로 복붙하면 즉시 동일 결과를 재현할 수 있어요.
빠른 해결(Quick Fix): 10분 만에 이메일·전화번호 정리
- Data → Clean Data 실행으로 공백/서식/불일치 자동 정리
- 도메인 추출:
=REGEXEXTRACT([@Email],"@(.+)$") - 전화번호 숫자만:
=REGEXREPLACE([@Phone],"[^0-9]","") - 하이픈 포맷:
=REGEXREPLACE(REGEXREPLACE([@Phone],"[^0-9]",""),"^(\d{3})(\d{3,4})(\d{4})$","$1-$2-$3") - 이메일 유효성:
=REGEXTEST([@Email],"^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$") - 미지원 환경: Power Query(열 분할/값 바꾸기/공백 제거) 사용
왜 정규식인가: 원리와 핵심 패턴
- 정규식은 문자열 패턴으로 찾기/추출/치환을 수행
- 이메일:
^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$ - 도메인만:
@(.+)$/ 숫자만:[^0-9]/ 우편번호(5자리):^\d{5}$
실무 예제: 표·수식·예상 결과
| Name | Phone | Address | Note | |
|---|---|---|---|---|
| Kim | kim.s@acme.co.kr | +82 (10) 1234-5678 | Seoul 06236 | VIP |
| Lee | lee99@@example.com | 010.5678.1234 | Busan 49000 | bounce |
| Park | park@shop.io | (010) 4321 0000 | Incheon 22345 | |
| Choi | choi@domain | 82-10-7777-8888 | Gwangju | invalid |
도메인 추출
=REGEXEXTRACT([@Email],"@(.+)$")
이메일 유효성 검사
=REGEXTEST([@Email],"^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$")
전화번호 숫자만 → 하이픈 포맷
=REGEXREPLACE([@Phone],"[^0-9]","")
=LET(
n, REGEXREPLACE([@Phone],"[^0-9]",""),
IF(REGEXTEST(n,"^\d{11}$"), REGEXREPLACE(n,"^(\d{3})(\d{4})(\d{4})$","$1-$2-$3"),
IF(REGEXTEST(n,"^\d{10}$"), REGEXREPLACE(n,"^(\d{3})(\d{3})(\d{4})$","$1-$2-$3"),
n)))
우편번호 판별
=REGEXTEST([@Address],"\b\d{5}\b")
LAMBDA 자동화
=LAMBDA(text,
LET(n,REGEXREPLACE(text,"[^0-9]",""),
IF(REGEXTEST(n,"^\d{11}$"),REGEXREPLACE(n,"^(\d{3})(\d{4})(\d{4})$","$1-$2-$3"),
IF(REGEXTEST(n,"^\d{10}$"),REGEXREPLACE(n,"^(\d{3})(\d{3})(\d{4})$","$1-$2-$3"),n))))
대체 방법/주의사항/체크리스트
Copilot Clean Data
먼저 Clean Data로 전처리 후 REGEX로 포맷 마무리.
Power Query / 텍스트 함수
- 열 분할, 값 바꾸기, 공백 제거로 REGEX 대체 가능
- TEXTSPLIT, LEFT/MID/RIGHT, SUBSTITUTE, SEARCH/FIND 조합
Troubleshooting
| 증상 | 원인 | 해결 |
|---|---|---|
| #N/A/빈 결과 | 캡처 그룹/패턴 불일치 | 괄호 캡처, 앵커 재확인 |
| 모두 FALSE | 전체/부분 일치 혼동 | ^/$ 사용 점검 |
| 하이픈 틀림 | 자리수 혼재 | 10/11자리 분기 |
| REGEX 없음 | 빌드/채널 미지원 | 업데이트/Power Query 대체 |
| 공백/서식 혼재 | 입력 노이즈 | Clean Data 먼저 |
맺음말
엑셀 REGEX 함수와 Copilot Clean Data 조합으로 10분 컷 정리! 다음 글에서 TEXTSPLIT/WRAPROWS/VSTACK 연계 파싱 자동화를 다룹니다.