엑셀 Excel 기초 MID, SEARCH 함수, 텍스트에서 원하는 부분을 잘라 낼 때

엑셀에서 문자열 관련 함수들은 정말 많이 사용됩니다. 특히 문자열을 자르는 LEFT, MID, RIGHT 함수들은 꼭 사용법을 알아 두셔야 합니다. 그 중에서 MID 함수로 주민번호에 생년월일과 메일 주소에서 아이디를 추출해 보려고 합니다. 주민번호는 문자열의 크기가 변하지 않기 때문에 MID 로만 추출이 되지만 메일 주소는 SEARCH 라는 함수를 같이 이용해야 합니다.

◎ MID 함수를 이용해서 나이 알아내기

MID 함수의 원형은 다음과 같습니다. 추출할 문자열을 첫 번째 인수로 넣고, 두 번째에는 문자가 시작되는 위치 값을 넣습니다. 세 번째는 추출할 문자 개수를 넣습니다.

=MID(text, start_num, num_chars)

* text : 필수 요소로써 추출할 문자가 들어 있는 텍스트를 넣는다.

* start_num : 필수 요소로써 추출할 문자가 시작되는 지점

* num_chars : 필수 요소로써 반환할 문자의 개수

그림과 같이 주민번호에서 생년월일을 추출하는 경우 MID 함수를 이용해야겠죠. MID 함수는 추출하려면 대상의 위치가 변하지 않고 고정된 경우 사용합니다. 예를 들어 메일 주소에서 아이디를 추출하는 함수로는 사용하지 못하겠죠. 이 때는 MID 와 다름 함수를 연계해야 합니다. 그 내용은 뒤에서 설명하도록 하겠습니다.

주민번호에서 생년월일을 추출하기 위해 MID 를 두 번 사용했습니다. 년과 월을 따로 추출하는 것이죠. 각각 추출한 년과 월은 “&” 연산자로 그림과 같은 형태의 문자열을 만들었습니다. 참고로 마지막 인자인 num_chars 가 문자열의 크기를 넘어가면 에러가 나지 않고 빈 텍스트가 반환됩니다.

◎ MID 와 SEARCH 함수를 이용해서 메일 아이디 추출하기

위에서 설명한 주민번호에서 생년월일 추출은 MID 함수 하나로 가능합니다. 그럼 메일 주소처럼 크기가 변하는 문자열은 어떻게 아이디를 추출해야 할까요? 메일 주소의 특징 중 하나는 아이디가 끝나는 지점에 “@” 가 있다는 것이죠. 이것의 위치만 알아내면 MID 함수와 같이 사용해서 아이디를 추출할 수 있습니다.

=SEARCH(find_text, within_text, [start_num])

* find_text : 필수 요소로써 찾으려는 문자가 들어 있는 텍스트를 넣는다.

* within_text : 필수 요소로써 find_text 에서 검색하려는 텍스트를 넣는다.

* start_num : 선택요소로써 찾기 시작하려는 위치까지의 문자 개수

“@” 의 위치를 알아내는 함수는 SEARCH 입니다. 첫 번째 find_text 에 메일 주소를 넣고 두 번째 인수에 “@” 를 넣습니다. 그럼 위치 값을 반환하는데 MID 에서 사용할 때는 -1 을 해야 합니다.

아이디를 추출하는 함수의 완성은 아래 식과 같습니다. MID 의 세 번째 인수에 SEARCH() 로 찾은 위치 값을 넣는 것입니다. 그럼 시작부터 아이디의 끝인 @ 까지 문자열을 잘라서 반환하는 것이죠.

=MID(G3, 1, SEARCH("@", G3) -1)

IT 오피스 : 한글, 엑셀, 워드, 윈도우10, 8, 7, 에버노트, 원노트, 아웃룩 프로그램 개발 : C#, 안드로이드, HTML, 자바스크립트, JQuery
Follow
4.7 Star App Store Review!
Cpl.dev***uke
The Communities are great you rarely see anyone get in to an argument :)
king***ing
Love Love LOVE
Download

Select Collections