Public Class SplitTest
Public Shared Sub Main()
Dim words As String = "This is a list of words, with: a bit of punctuation" + _
vbTab + "and a tab character."
Dim split As String() = words.Split(New [Char]() {" "c, ","c, "."c, ":"c, CChar(vbTab) })
For Each s As String In split
If s.Trim() <> "" Then
Console.WriteLine(s)
End If
Next s
End Sub 'Main
End Class 'SplitTest
' The example displays the following output to the console:
' This
' is
' a
' list
' of
' words
' with
' a
' bit
' of
' punctuation
' and
' a
' tab
' character
两个问题:
1、dim a( ) as string
dim a as string( )
两者有啥区别?
Dim a() As String 声明了一个名为 "a" 的数组,但没有指定数组的大小。意味着它是一个未初始化的数组,可以在后续代码中动态地分配数组的大小。
Dim a As String() 声明了一个名为 "a" 的数组,并且立即将其初始化为一个空数组。这里的括号表示数组的维度,而不是指定大小。这样的声明方式会创建一个长度为0的空数组,可以在后续代码中添加或更改数组的元素。
因此,主要区别在于前者声明的是一个未初始化的数组,后者声明并初始化了一个空数组。
2、split后面的成员列表是分隔符的列表么?只见过一个分隔关键字的,没见过多个的,有知道的么?
{" "c, ","c, "."c, ":"c, CChar(vbTab) }
这几个成员是什么意思? 其中的c又是什么意思?
String.Split() 可以根据指定的分隔符将字符串拆分为子字符串,并返回一个字符串数组。
该方法接受一个分隔符的列表,每个分隔符都是一个字符或一个字符串。
{" "c, ","c, "."c, ":"c, CChar(vbTab)}
这是一个包含多个分隔符的列表,每个分隔符都用单引号括起来并以逗号分隔。以下是每个分隔符的含义:
" ": 空格字符,用来将字符串按照空格进行拆分。
",": 逗号字符,用来将字符串按照逗号进行拆分。
".": 句点字符,用来将字符串按照句点进行拆分。
":": 冒号字符,用来将字符串按照冒号进行拆分。
CChar(vbTab): vbTab 是代表制表符的常量,CChar() 函数将其转换为一个字符。这个制表符字符用来将字符串按照制表符进行拆分。
在这个列表中,每个成员都是一个字符,它们用于指定不同的分隔符以便进行字符串拆分。
结尾的 c 表示各个成员是字符型的数据(即将字符串转为char)。