1
string[][] Chop = null;
string[] Line = null;



private void button1_Click(object sender, EventArgs e)
{
    Line = textBox1.Text.Split(new string[] { "\r\n", "\n" }, StringSplitOptions.None); // Im succesfull at cutting the input per line and stores it per line in Line variable.

    for(int x = 0;x < Line.Length; x++)
    Chop[][x] = Line[x].Split(' '); 

//I want the Chop to have an array of array of strings.
4

3 に答える 3

5

したがって、行の配列が必要で、各行に単語の配列が必要です。

string[][] lineWords = textBox1.Text
            .Split(new[] { Environment.NewLine }, StringSplitOptions.None)
            .Select(l => l.Split())
            .ToArray();
于 2012-11-02T23:47:08.763 に答える
3
var lines = from line in text.Split(new [] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries)
            select line.Split(new [] {' '}, StringSplitOptions.RemoveEmptyEntries);

lines変数はタイプになりますIEnumerable<string[]>

配列が必要な場合:

var lines = text.Split(new[] { '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries)
                .Select(line => line.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries))
                .ToArray();

linesになりますstring[][]

更新Linesまた、のプロパティを使用TextBoxして、行ごとにテキストを分割できると思います。

var chop = textBox1.Lines
                   .Select(line => line.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries))
                   .ToArray();
于 2012-11-02T23:42:05.053 に答える
1

正確な質問が何であるかはわかりませんが、少なくともタイトルに関連するコードに問題があるため、これがコメントではなく回答である理由がわかります。

まず、多次元配列ではなく、ジャグ配列 (配列の配列) を操作します。

...通常、ジャグ配列については適切に説明しますが、簡単なグーグルはおそらく私よりもうまく説明するので、代わりにこれで終わります:コードの最後の行は

Chop[x] = Line[x].Split(' ');
于 2012-11-02T23:41:44.407 に答える