解析具有多行的字符串(C#)

时间:2015-11-17 11:28:44

标签: c# string parsing string-parsing

我是C#的新人,我有一些问题。 我正在编写一些从远程计算机获取以下输出的程序(使用SSH):

wwn = 5001248018b6d7af

node_wwn = 5001248018b6d7ae

wwn = 5001248118b6d7af

node_wwn = 5001248118b6d7ae

wwn = 5001248218b6d7af

node_wwn = 5001248218b6d7ae

wwn = 5001248318b6d7af

node_wwn = 5001248318b6d7ae     

上面的输出保存为字符串...

我需要以下列格式从此输出List或Array中提取:

50:01:24:80:18:B6:D7:AF:50:01:24:80:18:B6:D7:AE

每两行都是一对(wwn和node_wwn)

我值得以下功能

    public void OutPutParse (string output)
    {
        string wwnn = null;
        string wwpn = null;

        string[] test = output.Split('\n');
        test = test.Where(item => !string.IsNullOrEmpty(item)).ToArray();

        //run all over the test array and exrract the wwns and wwpn
        for (int i = 0; i < test.Length; i++)
        {

        }


    }

此函数创建一个wwns和node_wwn

的数组(测试)

预期结果是一个数组或列表,其中包括wwn + node_wwn 50:01:24:80:18:B6:D7:AF:50:01:24:80:18:B6:D7:AE

1 个答案:

答案 0 :(得分:0)

实现这一目标的最简单方法是:

string www = "5001248018b6d7af";
string wwwn = "5001248018b6d7ae";

string myString = "";

// Implemenet loop here.
// www = "number" // the next number you get
// wwwn = "number" // the next number you get
myString = www + myString + wwwn;

当你有一个字符串或其他东西时,你只需要循环。

如果你想以相同的顺序拥有它,你可以用字符串之间的字符来做,如&#34 ;;&#34;并拆分所有数字,或者你只做两个字符串并在最后将它们组合起来:

string www = "5001248018b6d7af";
string wwwn = "5001248018b6d7ae";
string mywwwString = "";
string mywwwnString = "";

// Implement the loop to add strings here
// www = "number" // the next number you get
// wwwn = "number" // the next number you get
mywwwString += www;
mywwwnString += wwwn;
string myString = www  + wwwn;