엑셀 / 특정 문자 앞, 특정 문자 뒤 텍스트 추출하는 방법

특정 문자 앞부분은 LEFT와 FIND, 뒷부분은 RIGHT·LEN·FIND로 추출할 수 있습니다. 예를 들어 @의 위치를 구해 그 앞뒤를 나눕니다. 같은 구분자가 여러 개라면 기본 FIND는 첫 위치를 사용하므로 어느 구분자를 기준으로 할지 먼저 정하세요.

구분자 앞부분 추출

=LEFT(B2,FIND("@",B2)-1)

B2의 abc@manualfactory.net에서 @ 앞의 abc를 추출한 예입니다. FIND의 결과 4에서 구분자 자체 한 글자를 제외하려고 1을 뺍니다.

B2의 abc@manualfactory.net에서 @ 앞의 abc를 추출한 예입니다. FIND의 결과 4에서 구분자 자체 한 글자를 제외하려고 1을 뺍니다.

구분자 뒷부분 추출

=RIGHT(B2,LEN(B2)-FIND("@",B2))

같은 문자열에서 @ 뒤의 manualfactory.net을 추출한 예입니다. 전체 길이에서 구분자 위치를 빼면 오른쪽에서 가져올 문자 수가 됩니다.

같은 문자열에서 @ 뒤의 manualfactory.net을 추출한 예입니다. 전체 길이에서 구분자 위치를 빼면 오른쪽에서 가져올 문자 수가 됩니다.

한 글자 구분자 대신 여러 글자 구분자를 사용할 때는 구분자 길이까지 고려해야 합니다. 예를 들어 :: 뒤를 MID로 가져오려면 =MID(B2,FIND("::",B2)+LEN("::"),LEN(B2))처럼 시작 위치를 정할 수 있습니다.

구분자가 없거나 여러 개일 때

구분자가 없으면 FIND는 #VALUE! 오류를 반환합니다. 이 경우 ‘빈 문자열’로 처리할지 ‘원본 그대로’ 둘지 또는 오류 안내를 할지 정하세요. 무조건 빈 문자열로 감추면 잘못된 데이터가 누락된 것처럼 보일 수 있습니다.

A@B@C에서 기본 앞부분 수식은 A, 뒷부분 수식은 B@C입니다. 마지막 구분자 기준 또는 두 번째 구분자 기준 작업은 다른 수식이 필요합니다. 대소문자 구분도 FIND·SEARCH에 따라 달라집니다.

TEXTBEFORE·TEXTAFTER 대안

=TEXTBEFORE(B2,"@")
=TEXTAFTER(B2,"@")

지원되는 Excel에서는 구분자 앞뒤를 직접 표현할 수 있습니다. instance_num로 몇 번째 구분자를 사용할지 지정하고 음수로 끝에서부터 지정하는 옵션도 있습니다. 구형 Excel에서는 사용할 수 없으므로 공식 문서의 지원 제품과 미일치 처리 인수를 확인하세요.

구문과 지원 제품은 Microsoft의 LEFT 함수 설명, Microsoft의 RIGHT 함수 설명, Microsoft의 LEN 함수 설명, Microsoft의 TEXTBEFORE 함수 설명, Microsoft의 TEXTAFTER 함수 설명에서 확인할 수 있습니다.

이 방법은 문자열 분리이며 이메일 주소의 유효성까지 검사하지 않습니다. 이메일 사용자 부분만 다룰 때의 주의점은 이메일 앞부분 추출에서 확인할 수 있습니다.

같은 카테고리의 다른 글
엑셀 / 함수 / ISBLANK / 빈 셀인지 확인하는 함수

엑셀 / 함수 / ISBLANK / 빈 셀인지 확인하는 함수

ISBLANK로 실제 빈 셀을 검사하고 IF와 결합하는 방법을 설명합니다. 빈 문자열을 반환하는 수식, 공백 문자와 빈 셀의 차이를 구분할 수 있습니다.

엑셀 / PDF 형식으로 저장하는 방법

엑셀 / PDF 형식으로 저장하는 방법

Excel의 PDF 저장 경로와 선택 영역·활성 시트·전체 통합 문서 옵션을 설명합니다. 인쇄 배율, 페이지 잘림과 저장 후 검증도 안내합니다.

엑셀 / VBA / 매크로 단축키 만들기, 매크로 실행 버튼 만들기

엑셀 / VBA / 매크로 단축키 만들기, 매크로 실행 버튼 만들기

기존 매크로에 단축키, 도형과 양식 컨트롤 단추를 연결하는 방법을 설명합니다. 기본 단축키 충돌과 다른 파일을 참조하는 버튼의 점검 방법도 안내합니다.

엑셀 / 숫자를 한글 또는 한자로 나타내는 방법

엑셀 / 숫자를 한글 또는 한자로 나타내는 방법

숫자의 셀 서식을 한글·한자로 표시하는 방법을 설명합니다. 실제 숫자 유지, TEXT로 문자열 만들기와 서식의 보안·정밀도 한계를 구분합니다.

엑셀 / 셀 병합하기, 셀 분할하기

엑셀 / 셀 병합하기, 셀 분할하기

병합하고 가운데 맞춤·전체 병합·셀 병합·셀 분할을 비교합니다. 병합 과정의 데이터 손실, 해제의 한계와 표 편집에 미치는 영향도 설명합니다.

엑셀 / 함수 / SUMPRODUCT / 곱의 합 구하는 함수

엑셀 / 함수 / SUMPRODUCT / 곱의 합 구하는 함수

SUMPRODUCT로 단가·수량 등 같은 위치의 값을 곱해 합산하는 방법을 설명합니다. 배열 크기, 조건 계산과 성능 문제도 함께 확인할 수 있습니다.

엑셀 / 참조 / 상대 참조, 절대 참조, 혼합 참조

엑셀 / 참조 / 상대 참조, 절대 참조, 혼합 참조

상대·절대·혼합 참조의 복사 규칙을 예제로 설명합니다. $의 행·열 고정, F4 전환과 곱셈표·고정 비율 계산의 활용을 안내합니다.

엑셀 / 주민등록번호 뒷자리 별표로 바꾸는 방법

엑셀 / 주민등록번호 뒷자리 별표로 바꾸는 방법

REPLACE로 하이픈 유무에 따라 주민등록번호 뒷자리를 별표로 표시하는 방법을 설명합니다. 형식 검사와 원본이 남지 않는 배포용 파일 확인 절차도 안내합니다.

엑셀 / 인쇄 / 워크시트에서 선택한 영역만 인쇄하는 방법

엑셀 / 인쇄 / 워크시트에서 선택한 영역만 인쇄하는 방법

선택 영역 인쇄와 인쇄 영역 지정의 차이를 설명합니다. 머리글·배율·미리 보기와 다음 인쇄 작업의 설정 확인을 안내합니다.

엑셀 / 랜덤 정렬하는 방법

엑셀 / 랜덤 정렬하는 방법

RAND 보조 열로 자료 순서를 무작위로 바꾸는 방법을 설명합니다. 난수 값 고정과 행 전체 정렬, 원래 순서 복구 및 통계·추첨 용도의 한계도 다룹니다.