1

我有一个文本文件,其中包含

name,definition;
name1,definition;
name2, definition;

我知道如何将要从文本文件中提取到脚本中的字符串拆分,但我不知道如何将其全部放入 2darray 或锯齿状数组中。

它应该看起来像这样

array[0][0] = name;
array[0][1] = definition;

抱歉,我忘了说什么语言,它是 C#

4

2 回答 2

0

这是您在 JavaScript 中的解决方案。note如果您的行值可以包含引号、换行符或转义分隔符,则需要进行更多解析。

http://jsfiddle.net/N4YYA/

var result = [];
var txt = document.getElementById("test").value;
// get lines
var lines = txt.split(";");
for(var i=0; i<lines.length; i++) {
    // get and trim whitespace off the line
    var line = lines[i].replace(/(^[\s\r\n]*|[\s\r\n]*$)/g, "");
    var values = line.split(",");
    var row = [];
    for(var j=0; j<values.length; j++) {
        // get and trim whitespace off each value
        var value = values[j].replace(/(^[\s\r\n]*|[\s\r\n]*$)/g, "");
        // add it to your row array
        row.push(value);
    }
    // add row to results
    result.push(row);
}

// debug show result
var o = document.getElementById("outp");
for(var x=0; x<result.length; x++)
    o.innerHTML += result[x].toString() + "<br/>";
于 2013-07-03T17:57:27.577 回答
0

在 C# 中:

string[][] array = inputString.Split(';').Select(x => x.Split(',')).ToArray();

如果您出于某种原因想要包括修剪:

string[][] array = inputString.Split(';').Select(x => x.Split(',').Select(y=>y.Trim()).ToArray()).ToArray();
于 2016-08-15T20:40:23.773 回答