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)&"chr(13)&Chr(10)〈/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),"chr(13)&Chr(10)")
    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
  • 相关阅读:
    Network (poj1144)
    C. Hongcow Builds A Nation
    ZYB loves Xor I(hud5269)
    D. Chloe and pleasant prizes
    Game(hdu5218)
    约瑟夫环的递推方法
    Misaki's Kiss again(hdu5175)
    Exploration(hdu5222)
    B. Arpa's weak amphitheater and Mehrdad's valuable Hoses
    C. Arpa's loud Owf and Mehrdad's evil plan
  • 原文地址:https://www.cnblogs.com/MaxIE/p/350217.html
Copyright © 2011-2022 走看看