SEARCH 함수를 사용한 특정 문자 찾기
FIND 함수처럼 찾기 함수인 SEARCH 함수를 사용하는 방법을 한번 알아보겠습니다.
SEARCH 함수를 알아보기전에 FIND 함수에 대해서 알고 싶으시다면
2017/12/29 - [엑셀 다루기] - [엑셀 함수] 문자열 검색하기
1. 사용방법
- SEARCH(FIND_TEXT,WITHIN_TEXT,[START_NUM])
⊙ FIND_TEXT : 필수 요소이며, 찾으려는 텍스트입니다.
⊙ WITHIN_TEXT : 필수 요소이며, FIND_TEXT 인수 값을 검색하려는 텍스트입니다.
⊙ START_NUM : 선택 요소이며, WITHIN_TEXT 인수에서 찾기 시작하려는 위치까지의 문자 개수입니다.
FIND와 같은 찾기 함수 중에 하나지만 FIND와는 다른 특징을 가지고 있습니다.
FIND에서는 대/소문자 구분을 하지만 SEARCH에서는 대/소문자 구분을 안합니다.
FIND에서는 와일드카드 문자를 사용하지 못하지만 SEARCH에서는 와일드카드 문자인 ?(물음표), *(별표)를 사용할 수 있습니다.
2. 샘플
위 샘플 데이터를 참조하여 입력된 주소에서 동을 찾도록 해보겠습니다.
위 이미지는 샘플 데이터를 바탕으로 동을 찾아서 표시한 결과와 결과를 찾기 위한 수식을 표시하였습니다.
결과를 위한 수식을 확인해보면
SEARCH 함수의
첫번째 인자에는 찾고자하는 텍스트를 입력받고, EX) "구 *동"
두번째 인자에는 검색하려는 셀을 입력하여서 사용하였습니다.
실제 동을 찾기 위해서 MID 함수를 사용하여
첫번째 주소를 참조해서 SEARCH("구 *동", D3) 를 확인해보면 위의 이미지에서 표시한것처럼
"구 *동" 으로 시작하는 부분의 위치인 "덕진구"에서 "구"의 위치를 반환합니다.
그 위치는 처음 문자의 위치인 1을 기점으로 공백도 포함하여
12 라는 문자 위치가 반환되게 되는데
찾기 위한 동을 찾기 위해서 동의 시작지점을 표시하기 위해 +2 를 더해줘서
14 라는 위치를 반환합니다.
그 다음 동의 문자 길이를 찾기 위해서 입력한
((SEARCH("동 ",D3)+1) - (SEARCH("구 *동",D3)+2) 확인해보면
처음 앞부분의 SEARCH("동 ",D3)+1 으로 동으로 끝나는 지점인 631의 앞 위치를 반환하여
17 을 반환하고
뒷부분의 SEARCH("구 *동",D3)+2 으로 위에서 동의 시작 위치인 14를 반환하여
17 - 14 = 3
동의 문자 길이는 3이 되면서
MID(D3,SEARCH("구 *동",D3)+2,((SEARCH("동 ",D3)+1) - (SEARCH("구 *동",D3)+2)))
-> MID( D3, 14, 3 ) = 금암동
을 찾게 됩니다.
'엑셀 다루기' 카테고리의 다른 글
[엑셀 함수] 찾기 함수인 CHOOSE 함수 사용법 (0) | 2018.01.16 |
---|---|
[엑셀 함수] 문자열 검색하기 (0) | 2017.12.29 |
[엑셀 함수] 반올림,올림,버림를 표현할 수 있는 ROUND 함수를 알아보기 (0) | 2017.12.19 |
[엑셀 함수] 논리 함수 NOT, AND, OR 알아보기 (0) | 2017.12.12 |
[엑셀 함수] 조건식 IF를 다뤄보자 (0) | 2017.12.10 |