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

ASP
[原创]asp截取字符串的两种应用
内容分页函数
一搜图片搜索小偷
Web代理(Asp版)
实例分析ASP上传漏洞入侵实战及扩展
asp如何用discuz会员系统
asp javascript在线管理
newasp中main类
文章列表类别
[ASP]精华代码
登陆asp class
信息采集程序
用XML+FSO+JS实现服务器端文件的
vithink小文件自动实现文件浏览下载
使用FSO按文件大小浏览文件目录并进行删除操作
列出指定目录下的所有文件和目录
日期函数扩展类Ver0.1.1
管理员登录
cls_main.asp
asp提高首页性能的一个技巧

在ASP中使用类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 110 ::
收藏到网摘: 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&