• 북마크
  • 추가메뉴
어디로 앱에서 쉽고 간편하게!
애플 중고 거래 전문 플랫폼
오늘 하루 보지 않기
KMUG 케이머그

팁사용기

[팁] 문자열 함수-1 NthField 에 대해서 알아보자.

본문

안녕해세요? 미쉐린 김성준입니다.
이번부터는 문자열을 다룰 수 있는 함수에 대해서 몇가지 알아보도록 하겠습니다.
가장 많이 사용하는 문자열 함수중에는 NthField, CountField, Replace, ReplaceAll 등이 있습니다.
그외에도 Left, Right, Len, Mid 등도 많이 사용되니 이것에 대해서도 차후에 하나씩 알아보도록 하겠습니다.
그럼 오늘은 우선 NthField 함수에 대해서 알아보도록 하죠.


이름도 외우기 어려운 NthField 함수는 무엇일까요? 우선 이름의 해석을 보자면 n 번째의 필드라는 뜻을 나타내는 것 같습니다. 함수의 역할은 특정 구분자의 해당하는 필드 의 문자를 가져오는 역할을 해줍니다. 흠....설명을 해도 뭔말인지 모르시는 분들이 많을 것입니다. 물론 사용해 보신분은 설명을 볼 필요도 없겠죠.
그럼 NthField 의 기본 문법을 보도록 하겠습니다.

Result = NthField(문장, 구분자, 필드번호)

위와 같은 식입니다. NthField함수는 문자를 리턴해주는 리턴형 함수이며 긴 문장 중에서 특수한 구분자를 이용해서 필드를 나누어 주고 해당 필드의 값을 리턴해주는 것이죠.
그럼 다음의 예를 보도록 하죠..^^;;

NthField("안녕하세요? 미쉐린 입니다. 크헐헐", "?", 1)

자 위의 예를 보셨겠죠?
위에서 보면 문장은 "안녕하세요? 미쉐린 입니다. 크헐헐" 입니다. 그리고 구분자는 ? 가 되겠죠. 그리고 필드 번호는 1입니다.
그럼 NthField 가 보내는 결과 값은 무엇일까요? 바로 "안녕하세요" 가 됩니다. 구분자가 ? 표가 되기 때문에 위의 문장은 ? 표를 기준으로 2개의 필드로 나뉘게 되죠. ? 앞과 ? 뒤의 2개로 말이죠.
따라서 다음과 같이 2번재 필드인 "미쉐린 입니다. 크헐헐" 이라는 문장을 얻기 위해서는 다음과 같이 하면 됩니다.

NthField("안녕하세요? 미쉐린 입니다. 크헐헐", "?", 2)

그럼 다른 에를 보도록 하죠.

"김영권:KMUG:애플:매킨토시:레오파드:맥북에고성능그래픽카드를~!"

위와 같은 문장이 있다라고 해보죠. 대충 NthField 의 개념으로 보자면 ":" 를 구분자로 했을 때 나뉘어지는 필드는 모두 6개 이고 각각의 값을 구 할 수 있다는 것을 알 수 있습니다.
그럼 간단하게 위의 문장에서 "레오파드"라는 문장을 가져오는 코드를 작성해 본다면 다음과 같습니다.

NthField("김영권:KMUG:애플:매킨토시:레오파드:맥북에고성능그래픽카드를~!", ":", 5)

위와 같이 하면 결과 값은 "레오파드"라는 것을 알 수 있습니다.
그럼 진짜 프로그램에서 돌아가는 식으로 코딩을 해보도록 하겠습닏.

dim a, s as String

a = "김영권:KMUG:애플:매킨토시:레오파드:맥북에고성능그래픽카드를~!"

s = NthField(a, ":", 5)

MsgBox s

위의 코드를 Window 위 Open 이벤트에 작성하고 그냥 실행(Command+R) 을 시키면 바로 결과를 확인할 수 있습니다.

그리고 또 하나 구분자에 대해서 설명을 하도록 하겠습니다.
구분자는 말이죠. 위의 예처럼 하나의 문자가 아니더라도 상관없습니다. 특수문자이어도 되고 일반 문자도 되며 빈공간(Space) 도 가능합니다. 따라서 다음과 같은 식으로 구분자를 구분해줘도 된다는 것입니다.

"김영권-:1divideKMUG-:1divide애플-:1divide매킨토시-:1divide레오파드-:1divide맥북에고성능그래픽카드를~!"

구분자는 항상 반복적으로 들어가는 것을 정하면 되기 때문에 위엥서 구분자는 "-:1divide" 가 될 수 있습니다. 또는 Divide 만 사용해도 되고 뭐 원하는 식으로 긴 문자를 구분자로 사용해도 됩니다.

NthField 의 사용은 의외로 문자나 데이타를 다루는 곳에서 자주 사용하게 됩니다.
네트웍 프로그램을 만들때 특정 데이타를 보내게 되면 데이타를 구분해주는 헤더와 내용을 구분 할 때에도 사용되기고 하구요 데이타베이스 프로그램내에서도 자주 사용되기도 합니다.
따라서 기본적인 사용방법과 적용될 수 있는 예에대해서 잘 알고 자주 사용하는 습관을 들이시기 바랍니다.
그럼 좋은 하루 되세요..^^;;

PS. 오타, 질문, 오류 등에 대해서는 가차없이 게시판에 리플달아주세요..^^;;
그럼 휘릭~!

from michelin
0 0
로그인 후 추천 또는 비추천하실 수 있습니다.
포인트 5,044
가입일 :
2004-01-25 23:38:19
서명 :
미입력
자기소개 :
미입력

최신글이 없습니다.

최신글이 없습니다.

댓글목록 0

등록된 댓글이 없습니다.
전체 48 건 - 1 페이지