먼저 Split함수는 주어진 문자열 중 특정 구분자를 이용하여
배열 형태로 나누는 기능을 하는 함수입니다.
이 함수의 사용 형식은 다음과 같습니다.
Split(문자열 또는 식, 구분자)
예를 들어 "Hello I'm WebGenie"라는 문자열을 빈 칸 즉, 스페이스를
이용하여 Split함수를 호출해 봅시다.
Dim a
a = Split("Hello I'm WebGenie", " ")
이 함수의 실행 결과가 저장되는 변수 a는 배열이 됩니다.
배열의 각 원소 값은 다음과 같습니다.
a(0) = "Hello"
a(1) = "I'm"
a(2) = "WebGenie"
이상과 같은 결과가 저장되는거죠.
만일 Split 함수의 실행 결과 문자열에 구분자가 하나도 없으면
반환되는 값은 Split 함수의 첫번째 인자로 전달된 문자열
또는 식입니다.
즉 다음과 같은 경우에는 결과값이 그냥 str변수와 동일하다는 뜻이죠
Dim str, a
str = "123456"
'str변수에 저장된 값을 콤마를 구분자로 해서 나눈다
a = Split(str, ",")
이 경우 a변수의 값은 str변수의 값과 동일합니다.
따라서 Split함수를 실행한 결과는 배열일 수도 있고 아닐수도 있죠.
Split함수의 실행 결과가 배열인지 아닌지 알아내려면 IsArray함수를
사용합니다. 이 함수는 인자로 주어진 변수가 배열이면 True를,
그렇지 않으면 False를 반환합니다.
다음은 간단한 사용예입니다.
Dim str, a
str = "Hello, I'm WebGenie"
a = Split(str, " ")
If IsArray(a) Then
For i = 0 To UBound(a)
Response.Write a(i) & "<br>"
Next
Else
Response.Write i
End If
이 예제에서 UBound함수는 인자로 전달된 배열 변수의 가장 큰 원소
인덱스를 반환합니다. 예를 들어 5개의 원소를 갖는 배열의 가장
큰 원소 인덱스는 4죠. 이 경우 UBound함수의 결과는 4입니다.
반대로 가장 작은 원소 인덱스는 LBound 함수를 사용합니다.
다음으로 vbNewLine 은 VBS안에 내장된 상수입니다. 이름에서 알 수
있듯이 새로운 줄, 즉 엔터를 의미하는 상수죠.
그런데 보통 엔터를 표현하기 위해서는 vbNewLine보다는
vbCrLf 상수를 많이 사용합니다.
게시판에서 본문을 출력할 때 엔터 값을 <br>태그로 변환하기 위해
Replace함수를 사용할 때 주로 사용됩니다. 다음과 같이 코딩하죠.
Dim body
body = rs("body") 'DB에서 본문을 body변수에 저장합니다.
'엔터를 <BR>태그로 변경합니다.
body = Replace(body, vbCrLf, "<br>")
Response.Write body
이상과 같이 사용하죠.
자료실에 가시면 VBScript 온라인 도움말 제가 올려놓은거 있습니다.
ASP 코딩하실 때 많은 도움이 되실겁니다.
도움이 되셨기를...
===============================================
WebGenie - Professional Site Builder
MSN : geniex@msn.com
===============================================
--------------------- [원본 메세지] ---------------------
역시나 쇼핑몰 소스에서 회원메일링리스트부분입니다.
회원에게 단체로 메일을 보내는 소스인데요...
으~ 이거 생소한 것들이 너무 많이 나오네요.. 내가 미쵸 ㅠ.ㅠ