Visual Basic中的Split函数

Split 函数 

返回一个从零开始的一维数组,其中包含指定数量的子字符串。

Function Split(
   ByVal Expression As String,
   Optional ByVal Delimiter As String = " ",
   Optional ByVal Limit As Integer = -1,
   Optional ByVal Compare As CompareMethod = CompareMethod.Binary
) As String()

参数
Expression

必选。String 表达式,包含子字符串和分隔符。

Delimiter

可选。用于标识子字符串的界限的任何单个字符。如果省略了 Delimiter,则假定空白字符 (" ") 为分隔符。

Limit

可选。输入字符串应拆分到的子字符串的最大数量。默认值为 –1,指示在 Delimiter 字符串的每个匹配项处都拆分输入字符串。

Compare

可选。数值,指示计算子字符串时使用的比较模式。请参见“设置”了解具体的值。

String 数组。如果 Expression 为零长度字符串 (""),则 Split 返回包含零长度字符串的单个元素数组。如果 Delimiter 为零长度字符串,或如果它不在 Expression 中的任何位置出现,则 Split 将返回包含整个 Expression 字符串的单个元素数组。

CCompare 参数可以具有下列值ompare 参数可以具有下列值。
常数 说明

CompareMethod.Binary

执行二进制比较

0

CompareMethod.Text

执行文本比较

1

默认情况下,或 Limit 等于 -1 时,Split 函数将在分隔符字符串的每个匹配项处拆分输入字符串,并以数组形式返回子字符串。当 Limit 参数大于零时,Split 函数在分隔符的第一个 Limit-1 匹配项处拆分此字符串,并返回带有结果子字符串的数组。例如,Split("a:b:c", ":") 返回数组 {"a", "b", "c"},而 Split("a:b:c", ":", 2) 返回数组 {"a", "b:c"}

当 Split 函数在一行中遇到两个分隔符时,或在字符串的开头或结尾遇到分隔符时,会将它们解释为围绕空字符串 ("")。例如,Split("xx", "x") 返回的数组包含三个空字符串:一个在字符串开头和第一个“x”之间,第二个在两个“x”字符串之间,第三个在最后一个“x”和字符串结尾之间。

此表演示了可选 DelimiterLimit 和 Compare 参数如何更改 Split 函数的行为。

拆分调用 返回值

Split("42, 12, 19")

{"42," , "12," , "19"}

Split("42, 12, 19", ", ")

{"42", "12", "19"}

Split("42, 12, 19", ", ", 2)

{"42", "12, 19"}

Split("192.168.0.1", ".")

{"192", "168", "0", "1"}

Split("Alice and Bob", " AND ")

{"Alice and Bob"}

Split("Alice and Bob", " AND ", ,CompareMethod.Text)

{"Alice", "Bob"}

Split("someone@example.com", "@",1)

{"someone@example.com"}

Split("someone@example.com", "@",2)

{"someone", "example.com"}

下面的示例演示如何在字符串的空格处拆分该字符串。


Dim TestString As String = "Look at these!"
' Returns an array containing "Look", "at", and "these!".
Dim TestArray() As String = Split(TestString)

下面的示例演示如何拆分一行中有多个分隔符的字符串,以及如何筛选掉空字符串。


Dim TestString As String = "apple    pear banana  "
Dim TestArray() As String = Split(TestString)
' TestArray holds {"apple", "", "", "", "pear", "banana", "", ""}
Dim LastNonEmpty As Integer = -1
For i As Integer = 0 To TestArray.Length - 1
    If TestArray(i) <> "" Then
        LastNonEmpty += 1
        TestArray(LastNonEmpty) = TestArray(i)
    End If
Next
ReDim Preserve TestArray(LastNonEmpty)
' TestArray now holds {"apple", "pear", "banana"}

命名空间: Microsoft.VisualBasic

模块: Strings

程序集: Visual Basic Runtime Library(在 Microsoft.VisualBasic.dll 中)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值