ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • ASP 내장함수
    개발 관련/ASP 2009. 10. 9. 15:21
    내장함수
    2001. 01. 10
    문자열함수 /  날짜함수 / 기타 함수

     

    문자열 함수

    함수 내용 예제

    Asc 

    (문자열)
    첫번째 문자의 ANSI문자 코드 반환

    asc(A) => 65
    asc(a) => 97

    Chr 

    (아스키문자)
    ANSI 문자 코드와 관련된 문자 반환

    chr(65) => A

    InStr 

    (문자열1, 문자열2)
    문자열1에서 문자열2의 위치를 반환. 

    instr ("abcdef" , "d" ) => 4

    InStrRev 

    (문자열1, 문자열2)  
    instr와 같지만 검색을 뒤에서부터 검색한다.

    instrRev( "abcdef", "d" )  =>4

    Len 

     (문자열) 
     문자열의 길이

    Len("abcdef" ) => 6

    Left 

     (문자열, 크기)
    왼쪽부터 크기만큼 추출

    Left ("abcdef" , 2 ) => ab

    Mid 

     (문자열,추출할 시작위치,크기)
    추출할 위치로부터 크기만큼 중간 문자를 추출

    Mid ("abcdef" , 3, 2) => cd

    Right 

     (문자열, 크기)
    오른쪽부터 크기만큼 추출


    right ("abcdef", 3) =>def

    Trim 

     (문자열)
    앞, 뒤에 있는 공백을 제거


    Trim("  abcdef  " )  => "abcdef"

    RTrim 

     (문자열)
    오른쪽 공백 제거

     RTrim("abcdef    " )  => "abcdef"

    LTrim 

      (문자열)    
    왼쪽 공백 제거

    LTrim("   abcdef" )  => " abcdef"

    StrComp

     (문자열1, 문자열2) 문자열 비교
    문자열1이 문자열보다  작은경우 -1, 같은경우 0, 큰경우 1, 둘 중하나가 Null 인경우 null값을 반환.

    StrComp("ab", "AB" ) => 1 
    StrComp("ab", "ab" ) => 0

    StrReverse (문자열)
    문자열을 역순으로 반환
    StrReverse("abcdef") => fedcba
    Split  (문자열, 구분자, 개수 ) 
    구분자로 개수만큼 앞에서부터 잘라내 첨자가 0부터 시작하는 1차원 배열을 만든다.
    a = Split("ab/cd/ef", "/") => 
     a(0)="ab" a(1)="cd" a(2)="ef"
    Replace (문자열,찾을문자열,바꿀문자열)
    문자 치환하기. 바꿀 문자를 찾아서 모두 바꾸기 한다.
    Replace("abcdef", "c","v") =>
    abvdef

    LCase 

    (문자열) 소문자로 전환

    Lcase("ABCDEF") => abcdef

    UCase 

     (문자열) 대문자로 전환

    UCase("abcdef") => ABCDEF

     


    날짜/시간 함수

    시스템 날짜, 시간에 관련된 함수

    함수 내용 예제

    Date 

    date 시스템 날짜. 사용자의 현재 날짜

     date => 2001-1-5

    Day 

    day(date) 현 날짜에서 일자만 추출

     day(date)  => 5

    Month 

    month(date) 날짜 수식에서 월

    month(date)  => 1

    Year 

    Year(date) 날짜 수식에서 연도 표시

    Year(date) => 2001

    Time 

    time 시스템 시간

     time  => 10:25:40

    Hour 

    hour(time) 
    시간

    hour(time) => 10

    Minute 

    Minute(time) 분

     Minute(time) => 25

    Second 

    second(time)  초

     second(time) => 40

    Now 

    now 시스템의 날짜와 시간

     now => 2001-1-5 10:25:40

    Weekday 

    Weekday(date)  요일
    1:일요일~7:월요일

     Weekday(date) => 4

    weekdayname weekdayname(date)
    요일을 문자열로 반환
    weekdayname(Weekday(date)) => 수요일 
    DateAdd 현날짜에 일,월,연도를 대상으로 일자를 추가 dateadd("d", 10, date) => 2001-1-15
    DateDiff 두 날짜사이의 간격을 일,월,연도로 계산 datediff ("d", #2001-01-1#,  
    #2001-01-24#) => 13
    DatePart 현날짜에서 일,월,연도를 반환 datepart("d", date) => 5

     

    DateAdd(interval, number, date) 

    지정된 날짜에 시간을 추가하거나 뺀 새로운 날짜를 반환한다

    • 인수

    interval : 날짜나 시간의 다양한 기준을 설정하는 인수로 자세한 내용은 다음과 같다.
    (yyyy 년 , q 분기 , m 월  , y 일(일년 기준)  , d 일  , w 요일 , ww 주(일년 기준)  ,h 시  ,n 분 , s 초 )

    number : 추가할 날짜나 시간의 수로써 양수는 미래의 날짜, 음수는 과거의 날짜이다. 
    date : 기준 날짜

    • ex) 사용예

    <%
    Response.Write "오늘날짜 : " & Date & "<BR>" 
    Response.Write "오늘날짜+3개월 : " & DateAdd("m",3,Date) & "<BR>" 
    Response.Write "오늘날짜-3개월 : " & DateAdd("m",-3,Date) & "<BR>" 
    %>

     

    DateDiff (interval, date1, date2) 

    주어지는 두 날짜의 간격을 반환한다

    • 인수 설명

    interval : 날짜나 시간의 다양한 기준을 설정하는 인수로 자세한 내용은 다음과 같다.
    ( yyyy 년 , q 분기 , m 월  , y 일(일년 기준)  , d 일  , w 요일 , ww 주(일년 기준)  ,h 시  ,n 분 , s 초 )

    date1, date2 : 두 날짜사이의 간격에 사용할 두 날짜이다. 

    • ex) 사용예

    <% 
    FirstDate = CDate("2001년 1월 1일") 
    MyDate = Date 

    Response.Write FirstDate & "부터 지금까지 " & DateDiff("y", FirstDate, MyDate) & "일 경과 <BR>" 
    Response.Write FirstDate & "부터 지금까지 " & DateDiff("h", FirstDate, MyDate) & "시 경과 <BR>" 
    %> 

     

    DatePart(interval, date)

    주어진 날짜의 지정된 부분을 반환한다. 

    • 인수 설명

    interval : 날짜나 시간의 다양한 기준을 설정하는 인수로 자세한 내용은 다음과 같다.
    ( yyyy 년 , q 분기 , m 월  , y 일(일년 기준)  , d 일  , w 요일 , ww 주(일년 기준)  ,h 시  ,n 분 , s 초 )

    date : 필수적인 인수로 계산할 날짜식이다. 

    • ex) 사용예

    <% 
    Response.Write "오늘 " & now & "은 " & DatePart("q", now ) & "분기 입니다." 
    %> 

     

     


    수학 함수

    함수 내용 예제
    Round (수치,소수점이하자리)
    반올림하여 지정한 자리까지 표기 
    Round ( 1234.567 , 2 ) => 1234.57
    Round ( 1234.567 ) => 1235
    Rnd 난수 발생 0.00000 ~ 0.999999 사이의 난수를 반환 Rnd()  => 0.533434
    Fix (숫자) 정수 변환 Fix (123.45)  => 123
    Int (숫자) 정수 변환 int (123.45)  => 123
    Eval (식) 주어진 식의 결과를 얻는다. Eval (" 10 + 5" )  => 15 
    Abs (숫자) 수의 절대값 반환 Abs(-10.5)  => 10.5
    Hex (숫자) 16진수 값을  반환 Hex(15) => f
    Oct (숫자) 8진수 값을 반환 Oct(8)  => 10
    Sgn (숫자) 수의 부호를 반환
    양수는 1, 음수는 -1, 0은 0의 값을 반환
    Sgn(-10)  => -1
    Atn 아크탄젠트   
    Cos 코사인  
    Tan 탄젠트  
    Sin 사인  
    Exp 거듭제곰하는 자연로그의 밑인 e 를 반환 Exp(1.3) 
    Log 자연로그를 반환 Log(10) 
    Sqr 제곱근 Sqr(4) => 2

     

    Rnd  함수

    램덤함수로 무작위 0~ 1사이의 수를 추출한다. 램덤함수를 새로고침할때마다 새로운 수를 추출하기위해서는 Randomize 를 선언 후 사용한다. 

    • 사용예 ) 1~6 사이의 정수를 난수 발생하려먼

    Randomize       ' 랜덤함수 전에 선언한다.
    Int ( Rnd() * 6 + 1)

    * 범위 내에서 난수 발행 공식 :  a = Int((큰수 - 작은수 + 1) * Rnd + 작은수 ) 

     

    Fix, Int, Cint 함수 비교

    Int 함수와  Fix 함수는 양수에서는 차이가 없지만 음수일경우 Int는 작은수에 가까운 정수를 반환하고 Fix는 큰수에 가까운 정수를 반환한다. Cint는 반올림하여 정수로 반환한다.

    Fix  Int Cint
    3.6 3 3 4
    3.2 3 3 3
    3 3 3 3
    -3.6 -3 -4 -4
    -3.2 -3 -4 -3

     

     


    기타 함수

    Format  함수

    함수 내용 예제
    formatnumber 소숫점이하자리수 지정, 0표시여부, 음수괄호사용여부, 3자리마다 콤마여부 formatnumber(0.1234, 3,0,0,0) 
    => 0.123 
    formatcurrency 화폐형으로  formatcurrency(12345)
    => \12,345
    formatpercent 백분율 formatpercent(0.7256)
    => 72.56%
    formatdatetime 날짜와 시간의 다양한 표현 형식 formatdatetime(0)
    => 01-01-14 오후 10:37:32

     

    • formatnumber (수치, 소숫점 이하자리수, 0표시여부, 음수괄호사용여부, 3자리마다 콤마 여부) 
    0표시, 음수괄호사용, 콤마사용 여부값은 논리값으로 true( -1) , false( 0) 값을 사용.
    • formatcurrency(수치)

     통화형으로 변환

    ex) 사용예

    <%
    su1 = 1234567
    su2 = .12345
    su3 = -1234.567
    response.write formatnumber(su2, 2, 0, 0, 0) & "<br>"
    response.write formatnumber(su2, 2 , -1, 0, 0) & "<br>"
    response.write formatnumber(su3,  2, 0, -1, 0) & "<br>"
    response.write formatnumber(su1, 0, 0, 0, -1) & "<br>"
    response.write formatcurrency(su1) & "<br>"
    %>

    • FormatPercent (수치, 소숫점 이하자리수, 0표시여부, 음수괄호사용여부, 3자리마다 콤마 여부) 

    뒤에 % 문자가 붙는 백분율(100이 곱해짐)로 서식화된 식을 반환한다. 
    FormatPercent의 구성요소는 FormatNumber와 동일하다. 

    ex) 사용예

    <% 
    Response.Write FormatPercent ( 0.7235) & "<BR>" 
    Response.Write FormatPercent ( 0.7235,1) & "<BR>" 
    Response.Write FormatPercent ( -0.7235, 1 , 0, -1) & "<BR>" 
    %> 

    • formatdatetime (날짜, format type)  

    다양한 날짜와 시간의 포맷형식

    [ 포맷 형식 ]

    종류 내용
    vbGeneralDate  0 컴퓨터의 국가별 설정에서 일반 날짜 또는 시간 표시
    vbLongDate 1 컴퓨터의 국가별 설정에서 자세하게 날짜 표시
    vbShortDate 2 컴퓨터의 국가별 설정에서 간단하게 날짜 표시
    vbLongTime 3 컴퓨터의 국가별 설정에서 자세하게 시간 표시
    vbShortTime 4 컴퓨터의 국가별 설정에서 간단하게 시간 표시

    ex) 사용예

    <%
    response.write formatdatetime(now,vbgeneraldate ) & "<br>"
    response.write formatdatetime(now, 1) & "<br>"
    response.write formatdatetime(now, vblongtime) & "<br>"
    %>

    배열 관련

    함수 내용 예제
    LBound (배열명, 차원)
    배열의 첨자 하한값 구하기
    1차원은 LBound(배열명), 2차원은  LBound(배열명, 차원)
    Dim myarr ( 5 )
         a= LBound(myarr)     => 0
    Dim myarr ( 5, 7 )
         a= LBound(myarr, 2)  => 0
    UBound (배열명, 차원)
    배열의 첨자의 상한값 구하기
    1차원은 UBound(배열명), 2차원은 UBound(배열명, 차원)
    Dim myarr ( 5 )
         a= UBound(myarr) => 5
    Dim myarr ( 5, 7 )
         a= UBound(myarr, 1)  => 5
         a= UBound(myarr, 2)  => 7
    • 사용예)

    Dim a(5)
    a(1) = 1 : a(2) = 2 : a(3) = 3 : a(4) = 4 : a(5) = 5
    for i =1 to Ubound(a)
        response.write a(i)
    next

     

    데이타 타입 판별

    함수 내용 예제
    IsNull (변수 or 수식)
    널(Null) 여부 
    isNull ( a ) => false
    IsNumeric (변수 or 수식)
    숫자 형식 여부.
    isNumeric(5)  => true
    Isobject 객체  형식 여부.  
    IsDate 날짜 형식 여부. isDate(#2001-1-10#)  => true
    IsArray 배열 형식 여부. Dim b(5)
    isArray(b)  => true
    IsEmpty 초기화 여부 isempty(a)

     



     

     

Designed by Tistory.