使用 Split 從字串建立陣列
分割功能
返回包含指定數量子字串的從零開始的一維陣列。
句法
拆分(表示式 [,分隔符 [,限制 [,比較 ]]] )
部分 | 描述 |
---|---|
表達 | 需要。包含子字串和分隔符的字串表示式。如果 expression 是零長度字串(“”或 vbNullString),則 Split 返回一個不包含元素且沒有資料的空陣列。在這種情況下,返回的陣列的 LBound 為 0,UBound 為 -1。 |
分隔符 | 可選的。用於標識子字串限制的字串字元。如果省略,則假定空格字元(“”)是分隔符。如果 delimiter 是零長度字串,則返回包含整個表示式字串的單元素陣列。 |
限制 | 可選的。要返回的子字串數; -1 表示返回所有子字串。 |
相比 | 可選的。數值,指示在評估子字串時要使用的比較型別。請參閱設定部分了解值。 |
設定
該比較引數可以有以下值:
不變 | 值 | 描述 |
---|---|---|
描述 | -1 | 使用 Option Compare 語句的設定執行比較。 |
vbBinaryCompare |
0 | 執行二進位制比較。 |
vbTextCompare |
1 | 執行文字比較。 |
vbDatabaseCompare |
2 | 僅限 Microsoft Access。根據資料庫中的資訊執行比較。 |
例
在此示例中,通過顯示多個樣式演示了 Split 的工作原理。註釋將顯示每個不同執行的 Split 選項的結果集。最後演示瞭如何迴圈返回的字串陣列。
Sub Test
Dim textArray() as String
textArray = Split("Tech on the Net")
'Result: {"Tech", "on", "the", "Net"}
textArray = Split("172.23.56.4", ".")
'Result: {"172", "23", "56", "4"}
textArray = Split("A;B;C;D", ";")
'Result: {"A", "B", "C", "D"}
textArray = Split("A;B;C;D", ";", 1)
'Result: {"A;B;C;D"}
textArray = Split("A;B;C;D", ";", 2)
'Result: {"A", "B;C;D"}
textArray = Split("A;B;C;D", ";", 3)
'Result: {"A", "B", "C;D"}
textArray = Split("A;B;C;D", ";", 4)
'Result: {"A", "B", "C", "D"}
'You can iterate over the created array
Dim counter As Long
For counter = LBound(textArray) To UBound(textArray)
Debug.Print textArray(counter)
Next
End Sub