텍스트
SEARCH 함수
엑셀 2003
텍스트
SEARCH 함수
엑셀-SEARCH-함수-사용법
함수 요약

엑셀 SEARCH 함수는 문자열에서 특정 텍스트의 시작 위치를 찾는 함수입니다.

함수 구문
=SEARCH(찾을문자, 문자열, [시작지점])
찾을문자
-
검색할 텍스트입니다.
문자열
-
텍스트를 검색할 문자열입니다.
시작지점
-
[선택인수]문자열에서 검색을 시작할 위치입니다.
  •  '4'를 입력하면, 4번째 문자부터 검색을 시작합니다. 기본값은 '1' 입니다.
상세 설명

SEARCH 함수는 문자열에서 특정 텍스트의 시작 위치를 반환하는 함수입니다. FIND 함수와 비슷하지만, 대소문자를 구분하지 않고 와일드카드 문자(*,?)를 사용할 수 있어 더욱 유연한 검색이 가능합니다.

=SEARCH("app*","this is apple tree") 
/ / 9를 반환합니다.

유사한 함수로 FIND 함수는 대소문자를 구분하고 와일드카드를 사용할 수 없어 보다 엄격하게 텍스트를 검색할 수 있습니다. FIND 함수와 SEARCH 함수의 주요 차이점은 다음과 같습니다.

함수 대소문자구분 와일드카드 사용
FIND 함수 구분함 사용 불가
SEARCH 함수 구분하지 않음 사용 가능

SEARCH 함수는 다른 함수와 함께 사용할 때 더욱 강력한 기능을 발휘합니다. 예를 들어, ISNUMBER 함수와 함께 사용하여 문장에서 '특정 단어의 포함 여부'를 확인할 수 있습니다.

=ISNUMBER(SEARCH(단어,문장))
/ / 단어가 문장에 포함된 경우 TRUE를 반환합니다.
=IF(ISNUMBER(SEARCH(단어,문장)),"포함","미포함")
/ / 단어가 문장에 포함된 경우 "포함"을 출력합니다.

단어 포함 여부 공식의 자세한 동작 원리와 사용 예제는 아래 기초 입문 강의에서 자세히 정리했으니 참고하세요!👇


SEARCH 함수 간단 예제
1) 이메일 주소의 도메인 확인하기

이메일 주소에서 특정 도메인 여부를 판단해야 할 경우, 다음과 같이 함수를 사용할 수 있습니다.

=ISNUMBER(SEARCH("@gmail.com",이메일))
/ / 도메인이 gmail.com일 경우 TRUE를 반환합니다.
2) 주문번호에서 제품코드 추출하기

여러 구분기호로 나뉘어 작성된 제품 코드가 있을 때, 아래 함수를 사용하면 제품코드의 특정 부분을 추출할 수 있습니다.

/ / 제품코드 : "ORD-20240101-A001"
=LEFT(제품코드,SEARCH("-",제품코드)-1)
=LEFT(제품코드,4-1)
=LEFT(제품코드,3)
="ORD"
3) 파일명에서 확장자 변경하기

REPLACE 함수를 함께 사용하면, 문자열에서 특정 부분만 찾아 변경할 수 있습니다. 예를 들어, 다음과 같이 함수를 작성하면, .확장자가 ".pdf" 인 파일을 ".docx"로 변경할 수 있습니다.

/ /경로 : "C:\...\파일.pdf"
=REPLACE(경로,SEARCH(".pdf",경로),4,".docx")
/ / 파일 경로에 .pdf가 있을 경우, pdf 확장자를 .docx로 변경합니다.
/ / 예: "파일.pdf" → "파일.docx"

자주 묻는 질문
1) SEARCH 함수와 SEARCHB 함수의 차이점은 무엇인가요?

SEARCHB 함수는 DBCS 언어(한국어, 일본어, 중국어)가 기본 언어일 경우 사용하는 함수입니다. SEARCHB 함수는 바이트 기준으로 찾을문자의 위치를 반환합니다. 한국어의 경우 문자당 2바이트를 사용합니다.

=SEARCH("강남", "서울특별시 강남구")
'// 서(1) + 울(1) + 특(1) + 별(1) + 시(1) + 공란(1) 으로 = 7을 반환합니다.
=SEARCHB("강남", "서울특별시 강남구")
'// 서(2) + 울(2) + 특(2) + 별(2) + 시(2) + 공란(1) 으로 = 11을 반환합니다.

그 외 주의사항

찾으려는 텍스트가 문자열에 없거나, 시작위치가 문자열의 길이보다 크면 #VALUE! 오류를 반환합니다.

SEARCH 함수는 영문검색시 대/소문자를 구분하지 않습니다.

시작위치가 0보다 작으면 #VALUE! 오류를 반환합니다.

SEARCH함수의 찾을 문자에는 와일드카드를 사용할 수 있습니다.

=SEARCH(" *밭","한국과수원 사과밭 사과나무")
'// "밭"으로 끝나는 단어를 검색합니다. * 앞에 띄어쓰기를 포함해서 검색하는 것을 주의해주세요.
'// "사과밭"의 시작위치인 '6'을 반환합니다.

3 댓글
Inline Feedbacks
모든 댓글 보기
3
0
여러분의 생각을 댓글로 남겨주세요.x