VB处理文本中空格行等问题

来源:百度文库 编辑:神马文学网 时间:2024/04/30 02:52:09
注释:下面的函数可以去掉文中多余的回车和空行,可以对付非常规的字符(以0Ah作为回车,而不是0Dh,0Ah)
Private Function FormatStr(strReadyToFormat As String) As String
Dim strTemp() As String
Dim strReady As String
Dim nPos As Long
Dim i As Long
On Error Resume Next
Do
DoEvents
注释:有的文件以0Ah作为回车换行标志
nPos = InStr(1, strReadyToFormat, Chr(10), vbBinaryCompare)
注释:找到0AH后,表示准备另起一行,先将之前的字符0Dh取出(如果有的话),0Dh表示回车
strReady = Left(strReadyToFormat, nPos - 1)
注释:如果前面有0DH,全部去掉
Do While Asc(Right(strReady, 1)) = 13
strReady = Left(strReady, Len(strReady) - 1)
If strReady = "" Then Exit Do
Loop
注释:检查是不是一个空行
If Trim(strReady) <> "" Then
注释:若是,则写入
i = i + 1
ReDim Preserve strTemp(i)
strTemp(i) = strReady
End If
注释:去掉头部的字符串
strReadyToFormat = Right(strReadyToFormat, Len(strReadyToFormat) - nPos)
Loop Until nPos = 0 注释:继续向下找
FormatStr = ""
For i = 1 To UBound(strTemp)
FormatStr = FormatStr + strTemp(i)
Next
End Function
End Function 中国教程在线,http://www.5istudy.cn