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