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

ASP
asp搜索两个以上的词的原理
如何使用花生壳?
asp汉字转换成汉语拼音代码
asp程序实现伪静态的代码
asp处理xml数据的发送、接收类
ASP中使用jmail发送邮件的函数
asp中获取字符串中的时间字符串
ASP按照字数限制自动截取标题内容
asp中将内容生成word文档的函数
用ASP自动清空IE缓存里的内容
asp检测conn.execute是否执行成功的函数
自动获取当前页面URL的ASP函数
ASP采集中获取网页内所需的html代码
asp图片采集并且本地重命名保存的函数
如何使用asp去字符串中的超链接
asp网站通过限制请求防止被采集的函数
asp利用正则去掉字符串中所有html内容
用ASP取出HTML里面的图片地址的函数
fso实现整个文件夹内容的复制到另一个文件夹中
适合所有表的添加、删除、修改的函数

在ASP中使用类


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