【发布时间】:2013-02-10 08:19:12
【问题描述】:
例如..如果我有这样的文字
214asd
df5df8
d66f66
我想使用 vb.net 将它们分成 3 个字符串。
【问题讨论】:
例如..如果我有这样的文字
214asd
df5df8
d66f66
我想使用 vb.net 将它们分成 3 个字符串。
【问题讨论】:
假设您想在新行上拆分 - 使用 String.Split 将返回一个包含部分的数组:
Dim parts As String() = myString.Split(new String() {Environment.NewLine},
StringSplitOptions.None)
这将是特定于平台的,因此您可能希望拆分为 "\n"、"\r"、"\n\r" 或它们的组合。 String.Split 有一个重载,它接受一个字符串数组,其中包含您要拆分的字符串。
【讨论】:
parts(UBound(parts)) String (或者我认为它会是这样),并使用 StringSplitOptions.None 它会将我的变量设置为 "" - 如果有人需要省略空条目 [y/ies],请改用 StringSplitOptions.RemoveEmptyEntries 作为拆分选项。
Dim strLines() As String = Clipboard.GetText.Replace(Chr(13), "").Split(Chr(10))
我喜欢这样做。一个只能在一个字符上拆分,但在大多数情况下,NewLine 是两个字符,回车(0x0D AKA Char 13)和换行(0x0A AKA Char 10)。但在其他系统中,它只是一个 LF。所以我只需删除 CR 的所有实例并在 LF 上拆分。
【讨论】:
str.Split(New String() {Environment.NewLine},
StringSplitOptions.RemoveEmptyEntries)
【讨论】:
Dim enter As String = vbCrLf
Dim linecount As Integer = 0
Dim sr As New System.IO.StreamReader(yourTextFilePath)
linecount = sr.ReadToEnd.Split(CChar(enter)).Length - 1
【讨论】:
Dim strLines As String() = myString.Split(New String() {Convert.ToChar(13), Convert.ToChar(10)}, StringSplitOptions.RemoveEmptyEntries)
【讨论】: