当前位置:编程学习 > VB >>

求教大虾

    <TD><div align="center">最大风速</div></TD>
<TD><div align="center"><font color="#0000CC" size="2">2.2 m/s </font></div></TD>
我现在有个问题,第一行前面有四个空格,第二行前面是啥?
第二行前面是个大空格(不知道帖子发出来会不会有变化,实际上第二行第一个光标在行首,第二个就在“<”的前面,第三个就在“<”的后面),据说是什么表格自动生成的东西或别的什么。
我编程要判断每行(一共好多行)前面是否有这个并将其去除怎么怎么弄啊? --------------------编程问答-------------------- 没太明白你的意思,下面这个对不?

    Dim s As String
    Dim p As String
    s = "    <TD>  <div align=""center"">最大风速 </div> </TD> "
    p = " <"
    While InStr(s, p)
        s = Replace(s, p, "<")
        DoEvents
    Wend
    '输出结果:
    Debug.Print s
--------------------编程问答-------------------- trim() --------------------编程问答-------------------- LTrim(string)---去除前面的空格
RTrim(string)---去除后面的空格
Trim(string)---去除前后的空格


--------------------编程问答--------------------     <td><div align="center">极大风向</div></td>
<td><div align="center"><font color="#0000CC" size="2">331</font></div></td> --------------------编程问答--------------------     <td><div align="center">极大风向</div></td> --------------------编程问答-------------------- <td><div align="center"><font color="#0000CC" size="2">331</font></div></td> --------------------编程问答--------------------
Private Function StrFormat(s As String) As String
On Error Resume Next
Dim Buf As String
Dim StrTemp As String
Dim c As String
Dim i As Long
Dim j As Long
Dim k As Long
Dim L As Long
    Buf = s
    Do
        L = InStr(1, Buf, "<style", vbTextCompare)
        If L > 0 Then
            k = InStr(L + 6, Buf, "</style>", vbTextCompare)
            If k > 0 Then
                Buf = Left(Buf, L - 1) + Mid(Buf, k + 8)
            Else
                Buf = Left(Buf, L - 1)
                Exit Do
            End If
        Else
            Exit Do
        End If
    Loop
    Do
        L = InStr(1, Buf, "<script", vbTextCompare)
        If L > 0 Then
            k = InStr(L + 7, Buf, "</script>", vbTextCompare)
            If k > 0 Then
                Buf = Left(Buf, L - 1) + Mid(Buf, k + 9)
            Else
                Buf = Left(Buf, L - 1)
                Exit Do
            End If
        Else
            Exit Do
        End If
    Loop
    Buf = Replace(Buf, "&", "&")
    Buf = Replace(Buf, """, Chr(34)) '替换成双引号
    Buf = Replace(Buf, "<", "<")
    Buf = Replace(Buf, ">", ">")
    Buf = Replace(Buf, " ", "")
    Buf = Replace(Buf, "<", " <")
    Buf = Replace(Buf, ">", "> ")
    Buf = Replace(Buf, " ", "")
    Buf = Replace(Buf, Chr(26), " ")
    Buf = Replace(Buf, Chr(10), " ")
    Buf = Replace(Buf, Chr(9), " ")
    Buf = Replace(Buf, Chr(13), " ")
    Buf = LTrim(Buf)
    Buf = RTrim(Buf)
    '您可加入其他替换
    StrTemp = ""
    For i = 1 To Len(Buf)
        c = Mid(Buf, i, 1)
        Select Case c
            Case "<"
                If i <> 1 Then
                    StrTemp = StrTemp & Mid(Buf, j + 1, i - j - 1)
                End If
            Case ">"
                j = i
        End Select
    Next i
    L = Len(StrTemp)
    Do
        Buf = Replace(StrTemp, "  ", " ")
        i = Len(Buf)
        If i = L Then Exit Do
        L = i
        StrTemp = Buf
    Loop
    StrFormat = Buf
End Function
--------------------编程问答-------------------- 怎么看起来像网页源码。。。
补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,