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

특정 문자 앞부분은 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 함수 설명에서 확인할 수 있습니다.

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

같은 카테고리의 다른 글
엑셀 / 함수 / INT, TRUNC / 소수를 정수 만드는 함수

엑셀 / 함수 / INT, TRUNC / 소수를 정수 만드는 함수

INT와 TRUNC가 음수에서 달라지는 이유를 예제로 비교합니다. TRUNC의 자릿수 설정과 표시 형식만 변경하는 경우의 차이도 설명합니다.

엑셀 / 시트의 눈금선 없애는 방법

엑셀 / 시트의 눈금선 없애는 방법

보기 탭에서 눈금선을 숨기고 다시 표시하는 방법을 안내합니다. 셀 테두리와 인쇄 눈금선의 차이, 눈금선 색과 채우기 색의 영향도 설명합니다.

엑셀 / 함수 / MAX, MIN, MAXIFS, MINIFS / 최댓값, 최솟값 구하는 함수

엑셀 / 함수 / MAX, MIN, MAXIFS, MINIFS / 최댓값, 최솟값 구하는 함수

MAX·MIN과 조건별 MAXIFS·MINIFS를 비교하고 실제 범위 예제로 설명합니다. 조건에 맞는 데이터가 없을 때의 결과와 지원 버전도 확인할 수 있습니다.

엑셀 / 나누기, 몫 구하기, 나머지 구하기

엑셀 / 나누기, 몫 구하기, 나머지 구하기

나눗셈 연산자와 QUOTIENT·MOD의 결과를 비교합니다. 0으로 나누는 오류와 음수에서 몫·나머지가 계산되는 방식도 예제로 설명합니다.

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

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

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

엑셀 / 순열의 수, 중복순열의 수, 조합의 수, 중복조합의 수 계산하기

엑셀 / 순열의 수, 중복순열의 수, 조합의 수, 중복조합의 수 계산하기

순서·중복 허용 여부로 PERMUT·PERMUTATIONA·COMBIN·COMBINA를 선택하는 방법을 설명합니다. 같은 항목 수의 예제로 네 종류의 경우의 수를 비교합니다.

엑셀 / 함수 / CONCAT, CONCATENATE / 여러 텍스트를 하나로 합치는 함수

엑셀 / 함수 / CONCAT, CONCATENATE / 여러 텍스트를 하나로 합치는 함수

CONCAT·CONCATENATE와 & 연산자로 문자열을 연결하는 방법을 설명합니다. 공백·구분자 추가와 숫자·날짜 표시를 유지하는 방법도 안내합니다.

엑셀 / 함수 / 함수 목록

엑셀 / 함수 / 함수 목록

합계·조회·조건·문자·날짜 등 목적별로 주요 Excel 함수를 비교합니다. 실제 사용법 링크와 버전·인수·오류 확인 기준을 통해 적합한 함수를 찾을 수 있습니다.

엑셀 / 함수 / EXACT / 두 텍스트(문자열)이 같은지 비교하는 함수

엑셀 / 함수 / EXACT / 두 텍스트(문자열)이 같은지 비교하는 함수

EXACT로 두 문자열을 대소문자까지 정확하게 비교하는 방법을 설명합니다. 공백과 셀 서식의 영향, IF와 결합한 검증 예제도 다룹니다.

엑셀 / 함수 / DAYS / 두 날짜 사이의 일수를 계산하는 함수

엑셀 / 함수 / DAYS / 두 날짜 사이의 일수를 계산하는 함수

DAYS의 종료일·시작일 순서와 날짜 차이 계산을 설명합니다. 양끝 날짜 포함 여부, 실제 날짜 값과 업무일 계산의 차이도 확인할 수 있습니다.