再发几个ASP不错的函数

所属分类: 网络编程 / ASP编程 阅读数: 1118
收藏 0 赞 0 分享
********************
'函数作用:根据条件真假返回选定值中的某个
'参数:blnCondition:条件变量,varResultTrue:条件为真时返回值,varResultFalse:条件为假时返回值
Function IIF(blnCondition, varResultTrue,varResultFalse)
   If CBool(blnCondition) Then
      IIF = varResultTrue
   Else
      IIF = varResultFalse
   End If
End Function

'********************
'函数作用:判断某个字符串元素是否在给定枚举中
'参数:sEle:待判断的字符串,sArray:指定枚举
'举例:根据扩展名判断是否图片文件:InArray(strFileExt,"jpg,gif,bmp,png")
Function InArray(sEle,sArray)
    Dim aArray
    Dim i
    aArray = Split(sArray,",")
    For i = 0 To UBound(aArray)
        If Trim(sEle) = Trim(aArray(i)) Then
            InArray = True
            Exit Function
        End If
    Next
    InArray = False
End Function
'********************
'函数作用:判断某个字符串是否符合正则表达式
'参数:strString:字符串,strPattern:正则表达式
Function doReTest(strString, strPattern)
    Dim oRE
    Set oRE = New RegExp
    oRE.Pattern = strPattern
    oRE.IgnoreCase = True
    doReTest =  oRE.Test(strString)
    Set oRE = Nothing
End Function
'********************
'函数作用:正则提取
'参数:string:字符串,patrn:正则表达式
'返回:逗号分割的结果数组集成
Function doReExec(strng,patrn)
  Dim regEx, Match, Matches,RetStr      ' 创建变量。
  Set regEx = New RegExp         ' 创建正则表达式。
  regEx.Pattern = patrn          ' 设置模式。
  regEx.IgnoreCase = True         ' 设置为不区分大小写。
  regEx.Global = True         ' 设置全局适用。
  Set Matches = regEx.Execute(strng)   ' 执行搜索。
  For Each Match in Matches      ' 对 Matches 集合进行迭代。
    RetStr = RetStr & Match.Value & "," & vbCRLF
  Next
  doReExec = RetStr
End Function
复制代码 '********************
'函数作用:显示分页链接
'参数:lngCurPage:当前页是第几页,lngPageCount:一共几页,strSueryString:分页链接需要附加的QueryString变量
Sub showPageNav(lngCurPage,lngPageCount,ByVal strQueryString)
    Response.Write "当前第" & lngCurPage & "页,共:" & lngPageCount & "页"
    Dim i,j,k
    If lngCurPage = 1 Then                    '如果是第一页
        '如果lngPageCount小于10,则导航页最多到lngPageCount页
        If lngPageCount < 10 Then
            j = lngPageCount
        Else
            j = 10
        End If
        For i = 2 To j
            Response.Write("<a href=""?" & strQueryString & "&p=" & i & """>" & i & "</a>&nbsp;")
        Next
    ElseIf lngCurPage = lngPageCount Then    '如果是最后一页
        '如果lngPageCount小于10,则导航起始从1开始
        If lngPageCount < 10 Then
            j = 1
        Else
            j = lngPageCount - 10
        End If
        For i = j To lngPageCount - 1
            Response.Write("<a href=""?" & strQueryString & "&p=" & i & """>" & i & "</a>&nbsp;")
        Next
        Response.Write(lPageCount)
    Else                                    '如果是中间的页
        If lngCurPage <= 5 Then
            j = 1
        Else
            j = lngCurPage - 5
        End If
        If lngPageCount <= lngCurPage + 5 Then
            k = lngPageCount
        Else
            k = lngCurPage + 5
        End If
        Response.Write("<a href=""?" & strQueryString & "&p=" & 1 & """>" & "&lt;&lt;" & "</a>&nbsp;&nbsp;")
        For i = j To lngCurPage - 1
            Response.Write("<a href=""?" & strQueryString & "&p=" & i & """>" & i & "</a>&nbsp;")
        Next
        Response.Write(lngCurPage & "&nbsp;")
        For i = lngCurPage + 1 To k
            Response.Write("<a href=""?" & strQueryString & "&p=" & i & """>" & i & "</a>&nbsp;")
        Next
        Response.Write("&nbsp;<a href=""?" & strQueryString & "&p=" & lPageCount & """>" & "&gt;&gt;" & "</a>")
    End If    
End Sub
'********************
'函数作用:当前页请求方式是否为POST
'说明:用于在同一页面处理显示和数据操作,当PostBack()为真时说明提交表单至当前页,应进行数据后台操作
Function PostBack()
    If UCase(Trim(Request.ServerVariables("REQUEST_METHOD"))) = "POST" Then
        PostBack = True
    Else
        PostBack = False
    End If
End Function
'********************
'函数作用:返回执行长度的随机字符串
'参数:Length:长度
Function GenRadomString(Length) 
    dim i, tempS, v 
    dim c(39) 
    tempS = "" 
    c(1) = "a": c(2) = "b": c(3) = "c": c(4) = "d": c(5) = "e": c(6) = "f": c(7) = "g" 
    c(8) = "h": c(9) = "i": c(10) = "j": c(11) = "k": c(12) = "l": c(13) = "m": c(14) = "n" 
    c(15) = "o": c(16) = "p": c(17) = "q": c(18) = "r": c(19) = "s": c(20) = "t": c(21) = "u" 
    c(22) = "v": c(23) = "w": c(24) = "x": c(25) = "y": c(26) = "z": c(27) = "1": c(28) = "2" 
    c(29) = "3": c(30) = "4": c(31) = "5": c(32) = "6": c(33) = "7": c(34) = "8": c(35) = "9" 
    If isNumeric(Length) = False Then 
        Response.Write "A numeric datatype was not submitted to this function." 
        Exit Function 
    End If 
    For i = 1 to Length 
        Randomize 
        v = Int((35 * Rnd) + 1) 
        tempS = tempS & c(v) 
    Next 
    GenRadomString = tempS 
End Function
更多精彩内容其他人还在看

asp知识整理笔记4(问答模式)

这是关于asp知识整理的最后一份笔记,希望大家仔细阅读。
收藏 0 赞 0 分享

ASP基础知识VBScript基本元素讲解

这篇文章主要介绍了ASP基础知识VBScript基本元素的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP编码和解码函数详解

这篇文章主要介绍了ASP编码和解码函数的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP显示页面执行时间的方法

这篇文章主要介绍了ASP显示页面执行时间的方法,在本地测试一下输出页面需要多少时间,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP基础入门第一篇(ASP技术简介)

本文将以 Active Server Pages 为中心,向你全面展示制作动态商业网站的步骤和技巧并通过大量的实例,让你在不断的理论和实践之中笑傲“网络”……
收藏 0 赞 0 分享

ASP基础入门第二篇(ASP基础知识)

这篇文章是ASP基础入门第二篇,第一篇展示了ASP动态网站设计的一些最基本的方法,相信通过实践各位对 ASP 已经有了最基本的了解,本文将进一步介绍ASP动态网站的一些基本技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

ASP基础入门第三篇(ASP脚本基础)

通过前两篇的学习,相信各位已经对 ASP 的动态网站设计有了一个基本的概念和整体的印象。从本篇开始作者将从脚本语言的使用着手,由浅入深地带领大家探索 ASP 动态网站设计的真正奥秘。
收藏 0 赞 0 分享

ASP基础入门第四篇(脚本变量、函数、过程和条件语句)

大家在学习了脚本语言 VBScript 的变量、常量和过程的基本概念后,本期将继续向各位介绍 VBScript 的函数和语法。
收藏 0 赞 0 分享

ASP基础入门第五篇(ASP脚本循环语句)

在本文上两篇中,我们学习了脚本语言 VBScript 的变量、函数、过程和条件语句,本篇将继续给大家介绍 VBScipt 的循环语句,并对脚本语言在 ASP 中的应用加以总结。  
收藏 0 赞 0 分享

ASP基础入门第六篇(ASP内建对象Request)

从本篇开始作者从 ASP 内建对象着手,为大家详细剖析 ASP 的六个内建对象和各种组件的特性和方法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多