当前位置: 首页 > 图文教程 > 网络编程 > ASP > 在ASP中使用类

ASP
ASP简单入门教程(2):ASP环境配置
ASP简单入门教程(3):ASP语法
ASP简单入门教程(4):ASP变量
ASP简单入门教程(5):ASP子程序
HTTP 500 - 内部服务器错误(补充内容)
ASP教程:IIS中配置多站点
ASP实例教程:Content Rotator (ASP 3.0)
ASP实例教程:Content Linking组件
ASP实例教程:Browser Capabilities组件
ASP实例教程:AdRotator组件
ASP实例教程:Dictionary对象
ASP实例教程:File对象
ASP实例教程:Drive对象
ASP实例教程:TextStream对象
关于学习ASP的20个测试题目
ASP实例教程:Server对象
ASP实例教程:Session对象
ASP实例教程:用户信息和服务器
asp教程:解决IIS安装问题
ASP网站数据库被挂木马的处理办法

在ASP中使用类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 115 ::
收藏到网摘: n/a

  VBScript5中增加了许多新功能,最振奋人心的当属类和正则表达式的出现。以下是本人写的一个解析html代码的类。我是
学php的,语法有不习惯的地方,请大家多包含。

<%
Class HTMLParse

    ' 设置 Initialize 事件。
    Private Sub Class_Initialize
        myGlobal = True
        myIgnoreCase = True
    End Sub

    Property Let Global(g)
    Dim regEx            ' 建立变量。
  Set regEx = New RegExp         ' 建立正则表达式。
  regEx.Pattern = "True|False|1|0"         ' 设置模式。
  regEx.IgnoreCase = True         ' 设置是否区分大小写。
  If regEx.Test(CStr(g)) Then
        myGlobal = g
    Else
        Call Halt("无效Global参数配置")
    End If    
    End Property

    Property Get Global()
        Global = myGlobal
    End Property

    Property Let IgnoreCase(c)
    Dim regEx
  Set regEx = New RegExp
  regEx.Pattern = "True|False|1|0"
  regEx.IgnoreCase = True  
  If regEx.Test(CStr(c)) Then
        myIgnoreCase = c
    Else
        Call Halt("无效IgnoreCase参数配置")
    End If
    End Property

    Property Get IgnoreCase()
        IgnoreCase = myIgnoreCase
    End Property

    '解析所有HTML标记的函数
    Public Function Parse(input)
        Parse = "<table border=1 width=50% align=center>" & vbCrLf
        Dim regEx , regVal , match , i
        
        Set regEx = New RegExp
        regEx.Pattern = "<([a-z]\w*)(?:.*?)>(.*)<\/\1>"
        regEx.Global = myGlobal
        regEx.IgnoreCase = myIgnoreCase
        
        Set regVal = regEx.Execute(Trim(input))
        If regVal.Count > 0 Then '如果发现匹配元素
            Parse = Parse & "<caption>发现" & regVal.Count & "个HTML标记</caption>" & vbCrLf
            Parse = Parse & "<tr align=center><th>编号</th><th>匹配标记<th>匹配显示</th></tr>" & vbCrLf
        For i=0 To regVal.Count-1
            Set match = regVal(i)
            Parse = Parse & "<tr align=center>" & vbCrLf
            Parse = Parse & "<td>" & i+1 & "</td&