728x90

고급 Split 함수 사용법


Split(text_here, separator) 함수는 seperator 를 기준으로 텍스트 열을 나눕니다.

  * text_here : 자르고자 하는 문자열

  * split는 데이터(텍스트열)를 기준문자(seperator)로 나눠서 배열에 저장하는 것

  * 어떠한 특정 문자를 기준으로 값을 자르고 싶을 때 사용됩니다


고급 Split 함수라고 표현하는게 맞는지 모르겠지만 무심코 지나치기 쉬운 걸 배우게 되어 적어봅니다.

가장 간단하게 나누는 것을 알아봅시다.



varTemp = Split("David Lloyd George", " ") 라고 하면


처럼 공백을 기준으로 나눠서 배열로 가지고 있습니다.

varTemp(0), varTemp(2), varTemp(2)

이걸 원하는 셀에다가 뿌려주도록 하면 됩니다.


위와 같이 구분자(seperator)가 간단한 경우에는 비교적 쉬운 편입니다.


나누고자 하는 텍스트의 변수는 TXT 라고 하고 내용은 "안녕하세요홍길동의Split강좌에 오신것을환영합니다"

라고 해봅시다.


varTemp = Split(TXT, " ")

varTemp(0) = "안녕하세요홍길동의Split강좌에"

varTemp(1) = "오신것을환영합니다"

가 되겠지요..


그런데 이걸 다르게 표시하는 방법이 있습니다.

Split(TXT, " ")(0) = "안녕하세요홍길동의Split강좌에"

Split(TXT, " ")(1) = "오신것을환영합니다"


이와 같이 표현할 수 있는데 이건은 Split 함수를 이중으로 사용할 때 유용합니다.

찾고자 하는 구분자가 글자 한글자가 아니고 일정한 문자열을 사용해도 된다는 것을 초보자는 잘 모릅니다. 저도 단순한게 글자 한글자 또는 간단한 구분자만 생각했었거든요.

Split(Split(TXT, " ")(0), "Split")(0)

Split(Split(TXT, " ")(0), "Split")(1)

라고 할 수 있는데 이 경우 값이 어떻게 들어가는지 보면


Split(Split(TXT, " ")(0), "Split")(0) = "안녕하세요홍길동의"

Split(Split(TXT, " ")(0), "Split")(1) = "강좌에"

가 됩니다.


이처럼 Split을 중첩으로 잘라서 원하는 결과값을 찾아낼 수가 있습니다.


예제를 하나 살펴봅시다.


여기서 구하고자 하는 값은 307 이라고 합시다.

Split 함수를 이용해서 원하는 결과를 찾아낼 수가 있습니다.

위 그림의 텍스트를 TXT 라는 변수를 사용한다고 하면 ....

Split(Split(TXT, "class=""article"">")(1), "개")(0)

라고 하면 됩니다.


잘 이해가 안되나요?

Split(TXT, "class=""article"">")(1) 이라고 하면 seperator 인 class="article"> 를 기준으로 뒤의 값을 의미합니다. 따옴표 앞에는 "를 한번 더 붙여줘야 제대로 인식합니다.

seperator 를 기준으로 문자열이 엄청 길다고 해도 뒷부분을 의미한다는 것을 기억하면 되구요.

이제 다시 Split(Split(TXT, "class=""article"">")(1), "개")(0) 를 하면

class="article"> 의 뒷부분의 문자열 중에서 구분자(seperator) 를 기준으로 나눠서 앞에 있는 값을 의미합니다.

그러므로 class="article">307개 사이에 있는 307을 구할 수 있게 됩니다.




블로그 이미지

Link2Me

,