ASP 내부함수 정리
-
- 관련링크 : https://blog.daum.net/timed/6875556469회 연결
-
0회 연결
본문
문자열 함수
함수 | 내용 | 예제 |
Asc | (문자열) | asc(A) => 65 |
Chr | (아스키문자) | chr(65) => A |
InStr | (문자열1, 문자열2) | instr ("abcdef" , "d" ) => 4 |
InStrRev | (문자열1, 문자열2) | 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 | (문자열) 앞, 뒤에 있는 공백을 제거 |
|
RTrim | (문자열) | RTrim("abcdef " ) => "abcdef" |
LTrim | (문자열) | LTrim(" abcdef" ) => " abcdef" |
StrComp | (문자열1, 문자열2) 문자열 비교 문자열1이 문자열보다 작은경우 -1, 같은경우 0, 큰경우 1, 둘 중하나가 Null 인경우 null값을 반환. | StrComp("ab", "AB" ) => 1 |
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자리마다 콤마 여부)
<font size="2">0표시, 음수괄호사용, 콤마사용 여부값은 논리값으로 true( -1) , false( 0) 값을 사용. </font>
- 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) |
댓글목록 0