如:
<td width="24%" align=left>高级房</td>想取得"高级房"的数据,如何去掉HTML标记?
有简单的方法吗?谢谢!

解决方案 »

  1.   

    Private Sub Command1_Click()
    WebBrowser1.Document.write "<td width=""24%"" align=left>高级房</td>"
    MsgBox WebBrowser1.Document.body.innertextEnd SubPrivate Sub Form_Load()
    WebBrowser1.Navigate "about:blank"
    End Sub
      

  2.   

    instr len left right 组合 不过感觉你的HTML代码应该改一下。如:
    <td width='24%' align=left><span id='?'>高级房</span></td>code=all'all为整个网页的代码
    num = len(code) - instr(code,"<td width='24%' align=left><span id='?'>")  起点
    result = right(code,num) 为 高级房到网页结束
    num = instr(result,"</span></td>") - 1 结束点
    result = left(result,num)result 应该就是你想要的结果了吧?
      

  3.   

    Private Sub Command1_Click()
    Dim ss As String
    ss = "<td width=24% align=left>高级房</td>"
    MsgBox GetMsg(ss)
    End SubPrivate Function GetMsg(txt As String) As String
    Dim i As Long, ii As String
    Dim ist As Boolean
    Dim s As StringFor i = 1 To Len(txt)
        If Mid(txt, i, 1) = "<" Then
            ii = i
            ist = True
        Else
            
            If ist = False Then
                s = s & Mid(txt, i, 1)
            End If
            If Mid(txt, i, 1) = ">" Then ist = False
        End If
    Next i
    GetMsg = s
    End Function
      

  4.   

    '下面代码GetMsg函数将网页所有的标签里的字符 都保存在一个字符串数组变量里面了
    '而且可以过滤类似<br> 等没有结束符号的标签
    Option ExplicitPrivate Function GetMsg(strHtml As String)
    Dim lngStart As Long, lngEnd As Long, strArryMsgs() As String, bExitDo As Boolean
    Dim lngCount As Long
    Do
        DoEvents
        lngStart = lngEnd + 1
        lngStart = InStr(lngStart, strHtml, ">")
        If lngStart > 0 Then
            lngEnd = InStr(lngStart + 1, strHtml, "<")
        End If
        If lngStart > 0 And lngEnd > 0 Then
            If Mid(strHtml, lngEnd + 1, 1) = "/" Then
                ReDim Preserve strArryMsgs(lngCount)
                strArryMsgs(lngCount) = Mid(strHtml, lngStart + 1, lngEnd - lngStart - 1)
                lngCount = lngCount + 1
            End If
        Else
            bExitDo = True
        End If
    Loop Until bExitDo
    GetMsg = strArryMsgs
    End FunctionPrivate Sub Command1_Click()
    Dim strHtml As String, strRet() As String, i As Integer
    strHtml = "<a scr=""http://sss.com"" >第1个</a> <br> <font>第2个</font>"
    strRet = GetMsg(strHtml)
    For i = 0 To UBound(strRet)
        Debug.Print strRet(i)
    Next
    End Sub