Split函數使你能夠將長字串分離為單獨的字;但是如果在字與字之間不止一個空格,Split就會返回一個錯誤的結果。為了防止這種情況發生,你可以在使用Split之前用Replace函數來替換多個空格的出現。列表A給出了一個例子。
列表A
Private Sub CountWords()Dim strText As String = "It's a wonderful world"Dim iCount As IntegerDo While (strText.IndexOf(Space(2)) >= 0)strText = strText.Replace(Space(2), Space(1))LoopiCount = Split(strText, Space(1)).LengthMsgBox(iCount.ToString())End Sub
在這個例子中,我建立了字串strText,再將它設定成有多個字元的長字串。然後,我利用Replace函數來把出現的多個空格替換成一個空格。這樣做是為了把字串strText準備就緒,讓你能夠使用Split函數並提供正確的結果。
接著,我將strText輸入Split函數,並且得到了包括在字串strText中的字數。注意:如果你跳過或注釋用來移除多餘空格的迴圈,結果是7個字。使用移除所有多餘空格的迴圈後,結果才是正確的,4個字。
Private Sub CountWords()Dim strText As String = "It's a wonderful world" Dim iCount As IntegerDo While (strText.IndexOf(Space(2)) >= 0) strText = strText.Replace(Space(2), Space(1)) LoopiCount = Split(strText, Space(1)).Length MsgBox(iCount.ToString())End Sub