arrays - 将文本分割成二维数组

标签 arrays vb.net string split

我正在尝试将文本 block 拆分为二维数组。我知道如何将一行拆分为一个单词数组,并且我知道如何将多行拆分为一个行数组,但我想同时执行这两个操作。

例如,我想要这个:

Tim is nice
Jim is mean

会变成

((Tim,is,nice),(Jim,is,mean))

到目前为止,我已经能够使用

Str1.Split(new String() {Environment.NewLine}, StringSplitOptions.None)

将示例字符串变为:

(Tim is nice,Jim is mean)

我已经使用 Str1.Split“Tim is Nice” 转换为

(Tim,is,nice)

此外,如果我的代码有错误的语法或类似的情况,请告诉我,我主要是一名 Python 程序员。

最佳答案

这不是一个二维数组:

((Tim,is,nice),(Jim,is,mean))

这是一个锯齿状数组或数组的数组。由于每行/句子的字数可能不相同,因此这是一个更好的选择。对于您的示例,您将有一个 2 的数组来保存每个“行”,然后每个“行”将保存一个包含有多少个单词的数组。

Dim original = "Tim is nice" & Environment.NewLine & "Jim is very mean"

Dim lines = original.Split(New String() {Environment.NewLine.ToString},
                            StringSplitOptions.RemoveEmptyEntries)

Dim results(lines.Count - 1)() As String
For n As Int32 = 0 To lines.Count - 1
    ' store array of words to results(n)
    results(n) = lines(n).Split(" "c)
Next
' glue a line back together and show it
Console.WriteLine(String.Join(" ", results(1)))

results(0) 将保存 Tim 单词,results(1) 将保存 Jim 单词。结果(写入行):

Jim is very mean

关于arrays - 将文本分割成二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38488549/

相关文章:

php - 对动态调用方法的参数数组进行排序

c++ - 将字符串转换为 IP 地址时输出错误

C - 用 getpid() 中的 ID 替换字符串中的 $$?

c++ - 将 _bstr_t 就地转换为 char 数组

sql-server - 无法从Access导入数据到MS SQL Server

php - Javascript:通过post发送数组

javascript - 合并/展平数组数组

javascript - 您如何在对象中搜索属性中的属性?

vb.net - Windows XP 上的错误 [IM002] [Microsoft][ODBC 驱动程序管理器]

vb.net - Visual Studio : Please help interpreting debug output