zoukankan      html  css  js  c++  java
  • ASP实用函数库

    <%
    '判断文件名是否合法
    Function isFilename(aFilename)
     Dim sErrorStr,iNameLength,i
     isFilename=TRUE
     sErrorStr=Array("/","\",":","*","?","""","<",">","|")
     iNameLength=Len(aFilename)
     If iNameLength<1 Or iNameLength=null Then
      isFilename=FALSE
     Else
      For i=0 To 8
       If instr(aFilename,sErrorStr(i)) Then
        isFilename=FALSE    
       End If
      Next
     End If
    End Function

    '去掉字符串头尾的连续的回车和空格
    function trimVBcrlf(str)
     trimVBcrlf=rtrimVBcrlf(ltrimVBcrlf(str))
    end function

    '去掉字符串开头的连续的回车和空格
    function ltrimVBcrlf(str)
     dim pos,isBlankChar
     pos=1
     isBlankChar=true
     while isBlankChar
      if mid(str,pos,1)=" " then
       pos=pos+1
      elseif mid(str,pos,2)=VBcrlf then
       pos=pos+2
      else
       isBlankChar=false
      end if
     wend
     ltrimVBcrlf=right(str,len(str)-pos+1)
    end function

    '去掉字符串末尾的连续的回车和空格
    function rtrimVBcrlf(str)
     dim pos,isBlankChar
     pos=len(str)
     isBlankChar=true
     while isBlankChar and pos>=2
      if mid(str,pos,1)=" " then
       pos=pos-1
      elseif mid(str,pos-1,2)=VBcrlf then
       pos=pos-2
      else
       isBlankChar=false
      end if
     wend
     rtrimVBcrlf=rtrim(left(str,pos))
    end function

    '判断Email是否有效,返回1表示正确
    Function isEmail(aEmail)
     Dim iLocat,v,iLength,i,checkletter
     If instr(aEmail,"@") = 0 Or instr(aEmail,".") = 0 Then
      isEmail=0
      EXIT FUNCTION
     End If
     iLocat=instr(aEmail,"@")
     If instr(iLocat,aEmail,".")=0 Or instr(iLocat+1,aEmail,"@")>0 Then
      isEmail=0
      EXIT FUNCTION
     End If
     If left(aEmail,1)="." Or right(aEmail,1)="." Or left(aEmail,1)="@" Or right(aEmail,1)="@" Then
      isEmail=0
      EXIT FUNCTION
     End If
     v="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-.@"
     iLength=len(aEmail)
     For i=1 To iLength
      checkletter=mid(aEmail,i,1)
      If instr(v,checkletter)=0 Then
       isEmail=0
       EXIT FUNCTION
      End If
     Next
     isEmail=1
    End Function

    '测试用:显示服务器信息
    Sub showServer
     Dim name
     Response.write "<Table border=1 bordercolor=lightblue CELLSPACING=0>"
     for each name in request.servervariables
      Response.write "<tr>"
      Response.write "<td>"&name&"</td>"
      Response.write "<td>"&request.servervariables(name)&"<br></td>"
      Response.write "</tr>"
     next
     Response.write "</table>"
    End Sub

    '测试用:显示Rs结果集以及字段名称
    Sub showRs(rs)
     Dim strTable,whatever
     Response.write "<center><table><tr>"
     for each whatever in rs.fields
      response.write "<td><b>" & whatever.name & "</B></TD>"
     next
     strTable = "</tr><tr><td>"&rs.GetString(,,"</td><td>","</tr><tr><td>"," ") &"</td></tr></table></center>"
     Response.Write(strTable)
    End Sub

    '用HTML格式显示文本
    Function txt2Html(str)
     if isnull(str) then
      txt2Html=""
      exit Function
     end if
     str=Replace(str,chr(34),""")
     str=Replace(str,"<","<")
     str=Replace(str,">",">")
     str=Replace(str,chr(13)+chr(10),"<br>")
     str=Replace(str,chr(9),"    ")
     str=Replace(str," "," ")
     txt2Html=str
    End Function

    '测试用:显示调试错误信息
    Sub showError
     Dim sErrMsg
     sErrMsg=Err.Source&" "&Err.Description
     Response.write "<center>"&sErrMsg&"</center>"
     Err.clear
    End Sub

    '显示文字计数器
    Sub showCounter
    Dim fs,outfile,filename,count
    filename=server.mappath("count.txt")
    Set fs = CreateObject("Scripting.FileSystemObject")
    If fs.fileExists(filename) Then
     Set outfile=fs.openTextFile(filename,1)
     count=outfile.readline
     count=count+1
     Response.write "<center>浏览人次:"&count&"<center>"
     outfile.close
     Set outfile=fs.CreateTextFile(filename)
     outfile.writeline(count)
    Else
     Set outfile=fs.openTextFile(filename,8,TRUE)
     count=0
     outfile.writeline(count)
    END IF
    outfile.close
    set fs=nothing
    End Sub
    %>

    Array() 
     FUNCTION: 返回一个数组 
     SYNTAX: Array(list) 
     ARGUMENTS: 字符,数字均可 
     EXAMPLE: <%
    Dim myArray()
    For i = 1 to 7
      Redim Preserve myArray(i)
      myArray(i) = WeekdayName(i)
    Next
    %> 
     RESULT: 建立了一个包含7个元素的数组myArray
    myArray("Sunday","Monday", ... ... "Saturday") 
     
    CInt() 
     FUNCTION: 将一个表达式转化为数字类型 
     SYNTAX: CInt(expression) 
     ARGUMENTS: 任何有效的字符均可 
     EXAMPLE: <%
    f = "234"
    response.write cINT(f) + 2
    %> 
     RESULT: 236
    转化字符"234"为数字"234",如果字符串为空,则返回0值  
     
    CreateObject() 
     FUNCTION: 建立和返回一个已注册的ACTIVEX组件的实例。 
     SYNTAX: CreateObject(objName) 
     ARGUMENTS: objName 是任何一个有效、已注册的ACTIVEX组件的名字. 
     EXAMPLE: <%
    Set con = Server.CreateObject("ADODB.Connection")
    %> 
     RESULT: 
     
    CStr() 
     FUNCTION: 转化一个表达式为字符串. 
     SYNTAX: CStr(expression) 
     ARGUMENTS: expression 是任何有效的表达式。 
     EXAMPLE: <%
    s = 3 + 2
    response.write "The result is: " & cStr(s)
    %> 
     RESULT: 转化数字“5”为字符“5”。 
     
    Date() 
     FUNCTION: 返回当前系统日期. 
     SYNTAX: Date() 
     ARGUMENTS: None. 
     EXAMPLE: <%=Date%> 
     RESULT: 8/4/99 
     
    DateAdd() 
     FUNCTION: 返回一个被改变了的日期。 
     SYNTAX: DateAdd(timeinterval,number,date) 
     ARGUMENTS: timeinterval is the time interval to add; number is amount of 
    time intervals to add; and date is the starting date. 
     EXAMPLE: <%
    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
    %> 
     RESULT: 11/4/99
    3:34:45 PM

    "m" = "month";
    "d" = "day";

    If currentDate is in time format then,
    "h" = "hour"; 
    "s" = "second"; 
     
    DateDiff() 
     FUNCTION: 返回两个日期之间的差值 。 
     SYNTAX: DateDiff(timeinterval,date1,date2 [, firstdayofweek ][, 
    firstweekofyear]]) 
     ARGUMENTS: timeinterval 表示相隔时间的类型,如“M“表示“月”。 
     EXAMPLE: <%
    fromDate = #8/4/99#
    toDate = #1/1/2000#
    response.write "There are " & _
      DateDiff("d",fromDate,toDate) & _
      " days to millenium from 8/4/99."
    %> 
     RESULT: 从8/4/99 到2000年还有 150 天. 
     
    Day() 
     FUNCTION: 返回一个月的第几日 . 
     SYNTAX: Day(date) 
     ARGUMENTS: date 是任何有效的日期。 
     EXAMPLE: <%=Day(#8/4/99#)%> 
     RESULT: 4 
     
    FormatCurrency() 
     FUNCTION: 返回表达式,此表达式已被格式化为货币值  
     SYNTAX: FormatCurrency(Expression [, Digit ][, LeadingDigit ][, Paren ][, 
    GroupDigit]]]]) 
     ARGUMENTS: Digit 指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是
    计算机的区域设置; LeadingDigit 三态常数,指示是否显示小数值小数点前面的
    零。 
    EXAMPLE: <%=FormatCurrency(34.3456)%> 
     RESULT: $34.35 
     
    FormatDateTime() 
     FUNCTION: 返回表达式,此表达式已被格式化为日期或时间 
     SYNTAX: FormatDateTime(Date, [, NamedFormat]) 
     ARGUMENTS: NamedFormat 指示所使用的日期/时间格式的数值,如果省略,则使用 
    vbGeneralDate. 
     EXAMPLE: <%=FormatDateTime("08/4/99", vbLongDate)%> 
     RESULT: Wednesday, August 04, 1999 
     
    FormatNumber() 
     FUNCTION: 返回表达式,此表达式已被格式化为数值. 
     SYNTAX: FormatNumber(Expression [, Digit ][, LeadingDigit ][, Paren ][, 
    GroupDigit]]]]) 
     ARGUMENTS: Digit 指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是
    计算机的区域设置。; LeadingDigit i指示小数点右侧显示位数的数值。默认值为 -
    1,指示使用的是计算机的区域设置。; Paren 指示小数点右侧显示位数的数值。默认
    值为 -1,指示使用的是计算机的区域设置。; GroupDigit i指示小数点右侧显示位数
    的数值。默认值为 -1,指示使用的是计算机的区域设置。. 
     EXAMPLE: <%=FormatNumber(45.324567, 3)%> 
     RESULT: 45.325 
     
    FormatPercent() 
     FUNCTION: 返回表达式,此表达式已被格式化为尾随有 % 符号的百分比(乘以 
    100 )。 (%) 
     SYNTAX: FormatPercent(Expression [, Digit ][, LeadingDigit ][, Paren ][, 
    GroupDigit]]]]) 
     ARGUMENTS: 同上. 
     EXAMPLE: <%=FormatPercent(0.45267, 3)%> 
     RESULT: 45.267% 
     
    Hour() 
     FUNCTION: 以24时返回小时数. 
     SYNTAX: Hour(time) 
     ARGUMENTS: 
     EXAMPLE: <%=Hour(#4:45:34 PM#)%> 
     RESULT: 16
    (Hour has been converted to 24-hour system) 
     
    Instr() 
     FUNCTION: 返回字符或字符串在另一个字符串中第一次出现的位置. 
     SYNTAX: Instr([start, ] strToBeSearched, strSearchFor [, compare]) 
     ARGUMENTS: Start为搜索的起始值,strToBeSearched接受搜索的字符串 
    strSearchFor要搜索的字符.compare比较方式(详细见ASP常数) 
     EXAMPLE: <%
    strText = "This is a test!!"
    pos = Instr(strText, "a")
    response.write pos
    %> 
     RESULT: 9 
     
    InstrRev() 
     FUNCTION: 同上,只是从字符串的最后一个搜索起 
     SYNTAX: InstrRev([start, ] strToBeSearched, strSearchFor [, compare]) 
     ARGUMENTS: 同上. 
     EXAMPLE: <%
    strText = "This is a test!!"
    pos = InstrRev(strText, "s")
    response.write pos
    %> 
     RESULT: 13

     
    Int() 
     FUNCTION: 返回数值类型,不四舍五入,注意取值是不大于它的整数。 
     SYNTAX: Int(number) 
     ARGUMENTS: 
     EXAMPLE: <%=INT(32.89)%>  <%=int(-3.33)%>
     RESULT: 32  -4
     
    IsArray() 
     FUNCTION: 判断一对象是否为数组,返回布尔值 . 
     SYNTAX: IsArray(name) 
     ARGUMENTS: 
     EXAMPLE: <%
    strTest = "Test!"
    response.write IsArray(strTest)
    %> 
     RESULT: False 
     
    IsDate() 
     FUNCTION: 判断一对象是否为日期,返回布尔值 
     SYNTAX: IsDate(expression) 
     ARGUMENTS: expression is any valid expression. 
     EXAMPLE: <%
    strTest = "8/4/99"
    response.write IsDate(strTest)
    %> 
     RESULT: True 
     
    IsEmpty() 
     FUNCTION: 判断一对象是否初始化,返回布尔值. 
     SYNTAX: IsEmpty(expression) 
     ARGUMENTS: 
     EXAMPLE: <%
    Dim i
    response.write IsEmpty(i)
    %> 
     RESULT: True 
     
    IsNull() 
     FUNCTION: 判断一对象是否为空,返回布尔值. 
    SYNTAX: IsNull(expression) 
     ARGUMENTS: 
     EXAMPLE: <%
    Dim i
    response.write IsNull(i)
    %> 
     RESULT: False 
     
    IsNumeric() 
     FUNCTION: 判断一对象是否为数字,返回布尔值. 
     SYNTAX: IsNumeric(expression) 
     ARGUMENTS: 
     EXAMPLE: <%
    i = "345"
    response.write IsNumeric(i)
    %> 
     RESULT: True
    就算数字加了引号,ASP还是认为它是数字。 
     
    IsObject() 
     FUNCTION: 判断一对象是否为对象,返回布尔值. 
     SYNTAX: IsObject(expression) 
     ARGUMENTS: 
     EXAMPLE: <%
    Set con = Server.CreateObject("ADODB.Connection")
    response.write IsObject(con)
    %> 
     RESULT: True 
     
    LBound() 
     FUNCTION: 返回指定数组维的最小可用下标. 
     SYNTAX: Lbound(arrayname [, dimension]) 
     ARGUMENTS: ; dimension 指明要返回哪一维下界的整数。使用 1 表示第一维,2 
    表示第二维,以此类推。如果省略 dimension 参数,默认值为 1. 
     EXAMPLE: <%
    i = Array("Monday","Tuesday","Wednesday")
    response.write LBound(i)
    %> 
     RESULT: 0 
     
    LCase() 
     FUNCTION:  返回字符串的小写形式 
     SYNTAX: Lcase(string) 
     ARGUMENTS: string is any valid string expression. 
     EXAMPLE: <%
    strTest = "This is a test!"
    response.write LCase(strTest)
    %> 
     RESULT: this is a test! 
     
    Left() 
     FUNCTION: 返回字符串左边第length个字符以前的字符(含第length个字符). 
     SYNTAX: Left(string, length) 
     ARGUMENTS: 
     EXAMPLE: <%
    strTest = "This is a test!"
    response.write Left(strTest, 3)
    %> 
     RESULT: Thi 
     
    Len() 
     FUNCTION: 返回字符串的长度. 
     SYNTAX: Len(string | varName) 
     ARGUMENTS: 
     EXAMPLE: <%
    strTest = "This is a test!"
    response.write Len(strTest)
    %> 
     RESULT: 15 
     
    LTrim() 
     FUNCTION: 去掉字符串左边的空格. 
     SYNTAX: LTrim(string) 
     ARGUMENTS: 
     EXAMPLE: <%
    strTest = " This is a test!"
    response.write LTrim(strTest)
    %> 
     RESULT: This is a test! 
     
    Mid() 
     FUNCTION: 返回特定长度的字符串(从start开始,长度为length). 
     SYNTAX: Mid(string, start [, length]) 
     ARGUMENTS: 
     EXAMPLE: <%
    strTest = "This is a test! Today is Monday."
    response.write Mid(strTest, 17, 5)
    %> 
     RESULT: Today 
     
    Minute() 
     FUNCTION: 返回时间的分钏. 
     SYNTAX: Minute(time) 
     ARGUMENTS: 
     EXAMPLE: <%=Minute(#12:45:32 PM#)%> 
     RESULT: 45 
     
    Month() 
     FUNCTION: 返回日期. 
     SYNTAX: Month(date) 
     ARGUMENTS: date is any valid date expression. 
     EXAMPLE: <%=Month(#08/04/99#)%> 
     RESULT: 8 
     
    MonthName() 
     FUNCTION: Returns a string identifying the specified month. 
     SYNTAX: MonthName(month, [, Abb]) 
     ARGUMENTS: month is the numeric representation for a given month; Abb 
    (optional) is a boolean value used to display month abbreviation. True 
    will display the abbreviated month name and False (default) will not show 
    the abbreviation. 
     EXAMPLE: <%=MonthName(Month(#08/04/99#))%> 
     RESULT: August 
     
    Now() 
     FUNCTION: Returns the current system date and time. 
     SYNTAX: Now() 
     ARGUMENTS: None 
     EXAMPLE: <%=Now%> 
     RESULT: 8/4/99 9:30:16 AM 
     
    Replace() 
     FUNCTION: Returns a string in which a specified sub-string has been 
    replaced with another substring a specified number of times. 
     SYNTAX: Replace(strToBeSearched, strSearchFor, strReplaceWith [, start 
    ][, count ][, compare]]]) 
     ARGUMENTS: strToBeSearched is a string expression containing a sub-
    string to be replaced; strSearchFor is the string expression to search for 
    within strToBeSearched; strReplaceWith is the string expression to replace 
    sub-string strSearchFor; start (optional) is the numeric character 
    position to begin search; count (optional) is a value indicating the 
    comparision constant. 
     EXAMPLE: <% 
    strTest = "This is an apple!"
    response.write Replace(strTest, "apple", "orange")
    %> 
     RESULT: This is an orange! 
     
    Right() 
     FUNCTION: 返回字符串右边第length个字符以前的字符(含第length个字符). 
     SYNTAX: Right(string, length) 
     ARGUMENTS: . 
     EXAMPLE: <% 
    strTest = "This is an test!"
    response.write Right(strTest, 3)
    %> 
     RESULT: st! 
     
    Rnd() 
     FUNCTION: 产生一个随机数. 
     SYNTAX: Rnd [ (number) ] 
     ARGUMENTS: 
     EXAMPLE: <%
    Randomize()
    response.write RND()
    %> 
     RESULT: 任何一个在0 到 1 之间的数 
     
    Round() 
     FUNCTION: 返回按指定位数进行四舍五入的数值. 
     SYNTAX: Round(expression [, numRight]) 
     ARGUMENTS: numRight数字表明小数点右边有多少位进行四舍五入。如果省略,则 
    Round 函数返回整数. 
     EXAMPLE: <%
    i = 32.45678
    response.write Round(i)
    %> 
     RESULT: 32 
     
    Rtrim() 
     FUNCTION: 去掉字符串右边的字符串. 
     SYNTAX: Rtrim(string) 
     ARGUMENTS: 
     EXAMPLE: <%
    strTest = "This is a test!! "
    response.write RTrim(strTest)
    %> 
     RESULT: This is a test!! 
     
    Second() 
     FUNCTION: 返回秒. 
     SYNTAX: Second(time) 
     ARGUMENTS: . 
     EXAMPLE: <%=Second(#12:34:28 PM#)%> 
     RESULT: 28 
     
    StrReverse() 
     FUNCTION: 反排一字符串 
     SYNTAX: StrReverse(string) 
     ARGUMENTS: 
     EXAMPLE: <%
    strTest = "This is a test!!"
    response.write StrReverse(strTest)
    %> 
     RESULT: !!tset a si sihT 
     
    Time() 
     FUNCTION: 返回系统时间. 
     SYNTAX: Time() 
     ARGUMENTS: . 
     EXAMPLE: <%=Time%> 
     RESULT: 9:58:28 AM 
     
    Trim() 
     FUNCTION: 去掉字符串左右的空格. 
     SYNTAX: Trim(string) 
     ARGUMENTS: string is any valid string expression. 
     EXAMPLE: <%
    strTest = " This is a test!! "
    response.write Trim(strTest)
    %> 
     RESULT: This is a test!! 
     
    UBound() 
     FUNCTION: 返回指定数组维数的最大可用下标. 
     SYNTAX: Ubound(arrayname [, dimension]) 
     ARGUMENTS: ; dimension (optional) 指定返回哪一维上界的整数。1 表示第一
    维,2 表示第二维,以此类推。如果省略 dimension 参数,则默认值为 1. 
     EXAMPLE: <%
    i = Array("Monday","Tuesday","Wednesday")
    response.write UBound(i)
    %> 
     RESULT: 2 
     
    UCase() 
     FUNCTION: 返回字符串的大写形式. 
     SYNTAX: UCase(string) 
     ARGUMENTS: 
     EXAMPLE: <%
    strTest = "This is a test!!"
    response.write UCase(strTest)
    %> 
     RESULT: THIS IS A TEST!! 
     
    VarType() 
     FUNCTION: 返回指示变量子类型的值 
     SYNTAX: VarType(varName) 
     ARGUMENTS: 
     EXAMPLE: <%
    i = 3
    response.write varType(i)
    %> 
     RESULT: 2(数字)详见"asp常数" 
     
    WeekDay() 
     FUNCTION: 返回在一周的第几天. 
     SYNTAX: WeekDay(date [, firstdayofweek]) 
     ARGUMENTS: . 
     EXAMPLE: <%
    d = #8/4/99#
    response.write Weekday(d)
    %> 
     RESULT: 4(星期三) 
     
    WeekDayName() 
     FUNCTION: 返回一周第几天的名字. 
     SYNTAX: WeekDayName(weekday [, Abb ][, firstdayofweek]]) 
     ARGUMENTS: Abb可选。Boolean 值,指明是否缩写表示星期各天的名称。如果省
    略, 默认值为 False,即不缩写星期各天的名称.firstdayofweek指明星期第一天的
    数值 
     EXAMPLE: <%
    d = #8/4/99#
    response.write WeekdayName(Weekday(d))
    %> 
     RESULT: Wednesday 
     
    Year() 
     FUNCTION: 返回当前的年份. 
     SYNTAX: Year(date) 
     ARGUMENTS: 
     EXAMPLE: <%=Year(#8/4/99#)%> 
     RESULT: 1999  
  • 相关阅读:
    Mysql知识总结
    Unity3D UGUI 自动调节大小
    关于 Rijndael 加密
    配置java环境
    二叉查找树
    序列化和反序列化
    关于文件保存/关闭时报错:文件正由另一进程使用,因此该进程无法访问此文件。
    关于Unity中NGUI图片精灵响应鼠标的方法
    用人类的话来描述 里氏转换
    C#中string的相关方法
  • 原文地址:https://www.cnblogs.com/happyday56/p/1012230.html
Copyright © 2011-2022 走看看