1   1  /  1  页   跳转

VBscript常用函数

VBscript常用函数

1.数值型函数:
abs(num): 返回绝对值
sgn(num): num>0 1; num=0 0; num<0 -1;判断数值正负
hex(num): 返回十六进制值 直接表示:&Hxx 最大8位
oct(num): 返回八进制值 直接表示:&Oxx 最大8位
sqr(num): 返回平方根 num>0
int(num): 取整 int(99.8)=99; int(-99.2)=100
fix(num): 取整 fix(99.8)=99; fix(-99.2)=99
round(num,n): 四舍五入取小数位 round(3.14159,3)=3.142 中点数值四舍五入为近偶取整 round(3.25,1)=3.2
log(num): 取以e为底的对数 num>0
exp(n): 取e的n次幂 通常用 num^n
sin(num): 三角函数,以弧度为值计算 (角度*Pai)/180=弧度 con(num); tan(num); atn(num)


2.字符串函数:
len(str):计算字符串长度 中文字符长度也计为一!
mid(str,起始字符,[读取长度]):截取字符串中间子字符串
left(str,nlen):从左边起截取nlen长度子字符串
right(str,nlen):从右边起截取nlen长度子字符串
Lcase(str):字符串转成小写
Ucase(str):字符串转成大写
trim(str):去除字符串两端空格
Ltrim(str):去除字符串左侧空格
Rtrim(str):去除字符串右侧空格
replace(str,查找字符串,替代字符串,[起始字符,替代次数,比较方法]):替换字符串


注:默认值:起始字符 1;替代次数 不限;比较方法 区分大小写(0)


InStr([起始字符,]str,查找字符串[,比较方法]):检测是否包含子字符串 可选参数需同时选 返回起始位置
InStrRev(str,查找字符串[,起始字符][,比较方法]):反向检测是否包含子字符串 返回起始位置
space(n):构造n个空格的字符串
string(n,str):构造由n个str第一个字符组成的字符串
StrReverse(str):反转字符串
split(str,分割字符串[,次数][,比较方法]):以分割字符串为分割标志将字符串转为字符数组 可选参数需同时选


3.数据类型转换函数:
Cint(str):转换正数 True -1;False 0;日期 距离1899/12/31天数;时间 上午段 0;下午段 1;
Cstr(str):日期 输出格式 yyyy/mm/dd;时间 输出格式 Am/Pm hh:mm:ss
Clng(str):与Cin()类似
Cbool(num):num不为零 True;反之 False
Cdate(str):转换日期格式 0:#Am 12:00:00#;正数 距离1899/12/31天数的日期;浮点数 日期+小数时间
Cbyte(num):num<255 转换为字节
Csng(str):转换为单精度数值
Cdbl(str):转换为双精度数值
Ccur(str):转换为现金格式


4.时间函数:
date:取系统当前日期
time:取系统当前时间
now:取系统当前时间及日期值 Datetime类型
timer:取当前时间距离零点秒值,计时器,可计算时间差
DateAdd(间隔单位,间隔值,日期):推算相邻日期
DateDiff(间隔单位,日期一,日期二):计算时间差 日期二-日期一
Datepart(间隔单位,日期):计算日期的间隔单位值
Dateserial(date):输出日期值(按序列计算)
Timeserial(time):输出时间值(按序列计算)
Datevalue(datetime):取出字符串中日期值
Timevalue(datetime):取出字符串中时间值
weekday(date):计算星期几
MonthName(date):输出月分名
year(datetime):截取年份
month(datetime):截取月份
day(datetime):截取日
hour(datetime):截取小时
minute(datetime):截取分钟
second(datetime):截取秒


5.其它函数:
Array(unit,..):动态生成数组
Asc(str):输出字符串第一个字符的ASCII码
Chr(asc):转换ASCII为字符 Enter:Chr(13)&Chr(10)
Filter(数组名称,关键字符串,[,包含][,比较方法]):


将字符串数组中含有关键字符串的元素存成新的数组(默认) [包含]为false则取不包含的元素


oin(ArrayName):将数组中元素连成字符串
Ubound(ArrayName[,维数]):取得数组相应维数的上界
Lbound(ArrayName[,维数]):取得数组相应维数的下界 一般为0
Randmize n:启动随机数种子
Rnd(n):取得随机数,n>0或为空,取序列下一随机值,n<0,随机值相同,n=0,生产与上一随机值相同的数


取介于A和B之间的随机正数C,公式:C=Int((B-A+1)*Rnd+A) 条件(B>A)


子程序和自定义函数
Sub StrSubName Function StrFunName(arg[1],..)
子程序体 函数体
Exit Sub 中途跳出 Exit Function 中途跳出


End Sub StrFunName=value 返回值


End Function


[call] StrSubName 引用子程序 Var=StrFunName(arg[1],..) 引用函数


子程序和自定义函数可以递归调用;
最后编辑2008-02-20 12:25:12
分享到:
gototop
 

ASP六大对象常用语句示范:


Response:


Response.write StrVar/"String":向网页写出参数值或字符串 等同于在Html标记中嵌入<%=StrVar/"String"%>
Response.End:停止页面编译,并将已经编译内容输出到浏览器
Response.Buffer=True|False:页面编译时是否使用缓存的设置,一般在页面头部设置
Response.Flush:强制输出页面已编译部分内容
Response.Clear:将缓冲区内的数据清除
Response.Redirect URL:停止页面编译或输出,转载指定所需页面
Response.IsClientConnected:返回True|False,检测用户是否还处于连接状态
Response.Charset(CharsetName):设置页面编码类型,即<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
Response.ContentType [= ContentType ]:设置页面文件类型,同上
Response.Expires [= number]:设置页面失效时间,单位分钟
Response.ExpiresAbsolute [= [date] [time]]:设置页面失效的绝对时间


Response.Status = StatusDescription:设置页面状态描述











Request:






Request("PassStrName"):读取网页传递值,包括表单及以?PassStrName=value&PassStrName_n=value_n形式


Request[.collection|property|method](variable)


Request.querystring("PassStrName"):读取Get方法传递的表单值和?PassStrName=value


Request.QueryString(Varible)[(Index).Count]


Request.form("PassStrName"):读取Post方法传递的纯表单域的值


Request.Form(Parameter)[(Index).Count]


Request.ServerVaribles(Server Environment Variable):读取客户端系统环境变量,详见参考


Request.BinaryRead(Count):读取指定字节数的传送值


Request.TotalBytes:查询体的长度,以字节为单位,只读


注:同名表单如:CheckBox如有多项值,传递形式如右,StrName=value1,value2,...需要用Split函数分割各项值


Multiple的Select表单与CheckBox类似,TextArea的值可包含换行字符,用Replace转为<br>,以满足格式需要
Session:(用户全局变量)


Session("SesName")=value:存储Session变量值,也可读取该值
Session("SesName")=Empty:判断Session值是否存在的两种方法
IsEmpty(Session("SesName"))=True|False:判断Session值是否存在的两种方法
Session.TimeOut=num:设置Session变量的存在时效,单位分钟
Session.Abandon:清除所有Session变量值
Session.SessionID:Session变量的ID序列号,只读


Application:(应用程序全局变量)
Application("AppName")=value:存储Application变量值,也可读取该值
Application("AppName")=Empty:判断Application值是否存在的两种方法
IsEmpty(Application("AppName"))=True|False:判断Application值是否存在的两种方法
Application.Lock:Application变量值锁定,防止同时更改变量值
Application.UnLock:Application变量值解锁,允许更改变量值
注:Session与Application变量都可以用来存储数组和系统对象,引用方法是变量名相当于数组名而已,


但不能直接改变其值,需要借助临时数组修改值后,再赋给Session与Application变量


Global.asa文件的结构:<% @language="VBscript"%>
<% Sub Application_OnStart ...End Sub
Sub Application_OnEnd ... End Sub
Sub Session_OnStart ...End Sub
Sub Session_OnEnd ... End Sub%>


Server:


Server.MapPath("FileUrl"):映射文件名的服务器站点绝对地址,Path=Server.MapPath(./)可以得到虚拟目录根路径
Server.HtmlEncode("string"):转换为可以直接显示带Html格式的字符串,如:<,>等
Server.URLEncode( "string"):转换为浏览器地址编码
set Var=Server.CreatObject("ObjName"):创建对象变量
Server.ScriptTimeout = NumSeconds:ASP程序页面执行时限,以秒为单位


Cookies: 存储在用户本机的临时变量,每个Cookie的最大字节4KB,最多可以有300个Cookie 1.2MB
Response.cookies("StrCookieName")=value:存储Cookie变量值,也可读取该值
Response.cookies("StrCookieName")="":判断是否为空
Response.cookies("StrCookieName").Expires=Date:变量有效期,以天为单位,小于当前时间立即失效
Response.Cookies(Cookie[(key).Attribute]):标准语法
ObjectContext 控制ASP的事务处理


ObjectContext.OnTransactionAbort:由放弃的事务处理事件激发,在脚本完成处理后发生
ObjectContext.OnTransactionCommit:由成功的事务处理事件激发,在脚本完成处理后发生
ObjectContext.SetAbort:显式的放弃一次事务处理
ObjectContext.SetComplete:覆盖前面任何调用ObjectContext.SetAbort方法的调用
Msgbox "string"/StrName:VBscript提示框


表单的Onsubmit事件:在同一页面写入 Function FormName_onsubmit()..FormName_onsubmit=True/False..end Function,
gototop
 

页面会在提交前先执行语句,并根据返回值判断是否完成提交任务。


数据库连接字符串举例:
Access2000:
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("dbase\\liuyan.mdb")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("dbase\\liuyan.mdb")&";Password=admin"
Recordset.Open "数据表名", conn, 2, 2
SqlServer2000:
conn.Open "Provider=SQLOLEDB.1;User ID=sa;Password=admin;Initial Catalog=pubs;Data Source=server\\garlmrm"
conn.Open "provider=SQLOLEDB;data source=hyserver;uid=sa;pwd=;database=pubs"
Recordset.Open StrSQL, conn, 2, 2


Dbase:(?)
conn Open "Driver={Microsoft dBase Driver};SourceType=DB;SourceDB=" & Server.MapPath( "目录名" )
Recordset.Open StrSQL, conn, 2, 2


FoxBase:
conn Open "Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;SourceDB=" & Server.MapPath( "目录名" )
Recordset.Open DBF文件名或Select语句, conn, 2, 2
conn Open "Driver={Microsoft Visual FoxPro Driver};SourceType=DBC;SourceDB=" & Server.MapPath( "DBC数据库文件名" )
Recordset.Open DBF文件名或Select语句, conn, 2, 2


Excel:
conn Open "Driver={Microsoft Excel Driver (*.xls)};DBQ=" & Server.MapPath( "XLS文件名" )
Recordset.Open "Select * From ["&sheet&"$]",conn,2,2


注:使用DBF、DBC、Excel数据库,下面几点要注意:Excel数据库只能读取、增加记录、修改记录,但不能删除记录;
DBF、DBC可以读取记录、增加记录、删除记录、修改记录,但是在增加记录时,任何一个字段值都不能为空,由此
可看出局限性很大,所以尽可能地用MDB或SQL数据库


--------------------------------------------------------------------------------

-- 作者:bibiye
-- 发布时间:2005-4-9 22:39:52

--
1.函數array()
功能:創建一個數組變量
格式:array(list)
參數:list 為數組變量中的每個數值列,中間用逗號間隔
例子:
<% i = array ("1","2",3) %>
結果: i 被賦予為數組


2.函數Cint()
功能:將一表達式/其它類型的變量轉換成整數類型(int)
格式:Cint(expression)
參數:expression 是任何有效的表達式/其它類型的變量
例子:
<%
f = "234"
response.write cINT(f) + 2
%>
結果: 236
函數Cint()將字符"234"轉換 成整數234.如果表達式為空, 或者無效時,返回值為0;


3.函數:Creatobject()
功能:創建及返回一個ActiveX對象.
格式:Creatobject(obname)
參數:obname 是對象的名稱
例子:
<%
Set con = Server.CreateObject("ADODB.Connection")
%>
結果:


4.函數Cstr()
功能:將一表達式/其它類型的變量轉換成字符類型(string)
格式:Cstr(expression)
參數:expression是任何有效的表達式/其它類型的變量
例子:
<%
s = 3 + 2
response.write "The result is: " & cStr(s)
%>
結果:函數Cstr()將整數 5 轉換 成字符"5".


5.函數Date()
功能:返回當前系統(server端)的日期
格式:Date()
參數:無
例子:<% date () %>
結果:05/10/00


6.函數Dateadd()
功能:計算某個指定的時間和
格式:dateadd(timeinterval,number,date)
參數:timeinterval是時間單位(月,日..); number是時間間隔值,date是時間始點.
例子:
<%
currentDate =
8/4/99

newDate = DateAdd("m",3,currentDate)
response.write newDate
%>

<%
currentDate =
12:34:45 PM

newDate = DateAdd("h",3,currentDate)
response.write newDate
%>
結果:
11/4/99
3:34:45 PM
其中
"m" = "month";
"d" = "day";
如果是currentDate 格式,則,
"h" = "hour";
"s" = "second";


7.函數Datediff()
功能:計算某量個指定的時間差
格式:datediff(timeinterval,date1,date2,firstdayofweek,firstdayofyear)
參數:timeinterval 是時間單位; date1,date2是有效的日期表達式,firstdayofweek,firstdayofyear 是任意選項.
例子:
<%
fromDate =
8/4/99

toDate =
1/1/2000

response.write "There are " & _
DateDiff("d",fromDate,toDate) & _
" days to millenium from 8/4/99."
%>
結果:There are 150 days to millenium from 8/4/99.


8.函數day()
功能:返回一個整數值,對應于某月的某日
格式:day(date)
參數:date是一個有效的日期表達式;
例子:<% =date(
8/4/99
) %>
結果:4
gototop
 

9.函數formatcurrency()
功能:轉換成貨幣格式
格式:formatcurrency(expression ,digit,leadingdigit,paren,groupdigit)
參數:expression 是有效的數字表達式;digit表示小數點后的位數;leadingdigit,paren,groupdigit是任意選項.
例子:<%=FormatCurrency(34.3456)%>
結果:$34.35


10.函數Formatdatetime()
功能:格式化日期表達式/變量
格式:formatdatetime(date,nameformat)
參數:date為有效的日期表達式/變量;nameformat是指定的日期格式常量名稱.
例子:<% =formatdatetime("08/04/99",vblongdate) %>
結果:Wednesday,August 04,1999


11.函數formatnumber()
功能:格式化數字表達式/變量
格式:formatnumbe(expression ,digit,leadingdigit,paren,groupdigit)
參數:express為有效的數字表達式, digit表示小數點后的位數;leadingdigit,paren,groupdigit是任意選項
例子:
<% =formatnumber(23.2225568 ,3 %>
結果: 23.222


12.函數formatpercent()
功能:格式化百分數表達式/變量
格式:formatnumber(expression ,digit ,leading ,paren,groupdigit)
參數:expression 是有效的數字表達式,digit表示小數點后的位數;leadingdigit,paren,groupdigit是任意選項
例子:
<% =formatpercent(0.4523366,3)%>
結果: 45.233


13.函數:hour()
功能:返回一個數值,對應于的指定時間.
格式:hour(time)
參數:time對應于的指定時間.
例子:
<% =hour(
4:45:34 pm
) %>
結果:16 (24 小時制)


14.函數instr()
功能:返回一個數值,對應于某字符(串)在另一字符串中的位置.
格式:instr(start,strtobesearched,strsearchfor ,compare)
參數:start(任選)是從第start位尋找,strtobesearched 是被搜索的字符串,strsearchfor是被尋找的目標.compare是任意選項
例子:
<%
strtext="this is a test!!"
pos=instr(strtext,"a")
%>
結果:9,(字符"a"在strtext字符串的第九位)


15.函數instrrev()
功能:返回一個數值,對應于某字符(串)在另一字符串中的位置(從后面起開始尋找).
格式:instrrev(start, strtobesearched,strsearchfor,compare)
參數:參考 instr(),
例子:
<%
strtext="this is a test!!"
pos=instrrev(strtext,"s")
response.write pos
%>
結果:13, 字串"s"是strtext的第13個字符(從后面起開始尋找)


16.函數int()
功能:數字取整
格式:int(number)
參數:number 是任何有效的數字表達式/其它類型的變量
例子:
<% =int(322.96) %>
結果:322 (如果用Cint()則結果是323)


17.函數isarray()
功能:返回一個布爾值,判斷變量是否為數組.
格式: isarray(name)
參數:name是變量名稱
例子:
<%
str="text"
response.write isdate(str)
%>
結果:false


18.函數isdate()
功能:返回一個布爾值,判斷變量是否為日期變量.
格式:isdate(expression)
參數:expression 是任意的變量.
例子:<%
str="8/4/00"
response.write isdate(str)
%>
結果:true


19.函數isempty()
功能:返回一個布爾值,判斷變量是否為空.
格式:isempty(expression)
參數:expression 是任意的變量.
例子:
<%
dim i
response.write isempty(i)
%>
結果:true


20.函數isnull()
功能:返回一個布爾值,判斷變量是否包含非法的數据.
格式:isnull(expression)
參數:expression 是任意的變量.
例子:
<%
dim i
response.write isnull(i)
%>
結果:false
gototop
 

21.函數Isnumeric()
功能:返回一個布爾值,判斷變量是否為數字變量,或者是可以轉換成數字的其它變量.
格式:isnumeric(expression)
參數:expression 是任意的變量.
例子:
<%
i="234"
response.write isnumeric(i)
%>
結果: true.


22.函數Isobject()
功能:返回一個布爾值,判斷變量是否為對象的變量,
格式:isobject(expression)
參數:expression 是任意的變量.
例子:
<%
set con =server.creatobject("adodb.connection")
response.write isobject(con)
%>
結果: true


23.函數:Lbound()
功能:返回一個數組的下界.
格式:Lbound(arrayname,dimension)
參數:arrayname 是數組變量,dimension 是任意項
例子:
<%
i = array("1","2","3")
response.write lbound(i)
%>
結果:0


24.函數Lcase()
功能:將一字符類型變量的字符全部變換小寫字符.
格式:Lcase(string)
參數:string是字串變量
例子:
<%
str="THIS is Lcase!"
response.write Lcase(str)
%>
結果:this is lcase!


25.函數left()
功能:截取一個字符串的前部分;
格式:left(string,length)
參數:string字符串,length截取的長度.
例子: <% =left("this is a test!",6) %>
結果:this i


26.函數len()
功能:返回字符串長度或者變量的字節長度
格式:len(string |varname)
參數:string字符串;varname任意的變量名稱
例子:
<%
strtest="this is a test!"
response.write left(strtest)
%>
結果:15


27.函數ltrim()
功能:去掉字符串前的空格.
格式:ltrim(string)
參數:string 字串.
例子: <% =ltrim (" this is a test!")
結果:this is a test!


28.函數Mid()
功能:從字串中截取字串.
格式:mid(string,start ,length)
參數:string字串,start截取的起點,length要截取的長度.
例子:
<%
strtest="this is a test, Today is Monday!"
response.write mid(strtest,17,5)
%>
結果:Today


29.函數minute()
功能:返回一數值, 表示分鐘
格式:minute(time)
參數: time是時間變量
例子:<% =minute(
12:23:34
) %>
結果:23


30.函數month()
功能:返回一數值, 表示月份
格式:month(time)
參數:time是日期變量
例子:<% =month(
08/09/99) %>
結果:9


31.函數monthname()
功能:返回月份的字符串(名稱).
格式:Monthname(date ,abb)
參數:date是日期變量,abb=true時 則月份的縮寫,
例子:
<% =monthname(
4/5/99
) %>
結果:April


32.函數Now()
功能:返回系統的當前時間和日期.
格式:now()
參數:無
例子:
<% =now() %>
結果: 05/10/00 8:45:32 pm


33.函數:replace()
功能:在字串中查找,替代指定的字串.
格式:replace(strtobesearched,strsearchfor,strreplacewith

,start,count,compare)
參數:strtobesearched是字串; strsearchfor是被查找的子字串;strreplacewith

是用來替代的子字串.start,count,compare 是任意選項.
例子:
<%
strtest="this is an apple."
response.write replace(strtest,"apple","orange")
%>
結果:this is an orange.


34.函數right()
功能:截取一個字符串的后部分
格式:right(string,length)
參數:string字符串,length截取的長度.
例子:
<%
strtest="this is a test!"
response.write right(strtest,3)
%>
結果:st!


35.函數rnd()
功能:返回一個隨机數值
格式:rnd(number)
參數:number是任意數值.
例子:
<%
randomize()
response.write rnd()
%>
結果:0/1數值之一,無randomize(), 則不能產生隨机數.


36.函數round()
功能:完整數值
格式:round(expression,numright)
參數:expression數字表達式;numright任意選項.
例子:
<%
i=12.33654
response.write round(i)
%>
結果: 12


37.函數rtrim()
功能:去掉字符串后的空格.
格式:rtrim(string)
參數:string 是字串
例子:
<%
response.write rtrim("this is a test! ")
%>
結果:this is a test!


38.函數second()
功能:返回一個整數值.
格式:second(time)
參數:time是一個有效的時間表達式;
例子:<% =second(
12:28:30
) %>
結果:30


39.函數strReverse()
功能:返回与原字串排列逆向的字串.
格式:strreverse(string)
參數:string是字串
例子:<% =strreverse("this is a test!")
結果:!tset a si siht


40.函數time()
功能:返回當前系統的時間值.
格式:time()
參數:無
結果:9:58:28 Am
gototop
 

41.函數trim()
功能:刪去字符串前,后的空格.
格式:trim(string)
參數:string 字串.
例子:
<%
strtest=" this is a test! "
response.write trim(strtest)
%>
結果:this is a test!


42.函數UBound()
功能:返回一個數組的上界.
格式:Ubound(expression ,dimension)
參數:expression 是數組表達式/數組變量,dimension 是任意項
例子:
<%
i = array("1","2","3")
response.write ubound(i)
%>
結果: 2


43.函數:UCase()
功能:將一字符類型變量的字符全部變換成大寫字符.
格式:Ucase(string)
參數:string是字串變量
例子:
<%
str="THIS is Lcase!"
response.write Lcase(str)

%>
結果:THIS IS LCASE!


44.函數Vartype()
功能:返回變量的常量代碼(整數)
格式:Vartype(varname)
參數:varname是任何類型的變量名稱.
例子:
<%
i=5
response.write vartype(i)
%>
結果:2 (2表示整數,須要參考ASP常量代碼.)


45.函數Weekday()
功能:返回一個整數,對應一周中的第几天.
格式:Weekday(date ,firstofweek)
參數:date為日期變量,firstofweek為任選項.
例子:
<%
d=
5/9/00

response.write weekday(d) %>
結果:3(3 表示是星期二)


46.函數weekdayname()
功能:返回字串,對應星期几.
格式:weekdayname(weekday,abb,firstdayofweek)
參數:weekday為日期變量,abb,firstdayofweek為任選項.
例子:
<%
d =
8/4/99

response.write weekdayname(d)
%>
結果: Wednesday


47.函數year()
功能:返回日期表達式所在的年份.
格式:year(date)
參數:date是有效的日期表達式
例子:
<% =year(
8/9/99
) %>
結果:1999
gototop
 
1   1  /  1  页   跳转
页面顶部
Powered by Discuz!NT