拆分字符串数组c#

时间:2017-03-06 11:35:27

标签: c# string

所以我有多个字符串数组。在每个数组中我有一个使用'|'的字符串作为分隔符。我需要的是创建一个字符串,其中包含数组的第一个元素,直到'|'。

所以在这个例子中我需要6485,6486,6487,6509,6510,6511,6533,6534,6535,| enter image description here

2 个答案:

答案 0 :(得分:1)

使用String.Split()拆分原始字符串,然后将第一个存储在单独的数组中,然后使用String.Join()将它们连接起来

string[] tempStrings = new string[stringArray.Length];
for(int i = 0; i < stringArray.Length; i++) 
{
    tempStrings[i] = stringArray[i].Split(@"|")[0];
}

string result = String.Join(",", tempStrings);

答案 1 :(得分:1)

使用System.Linq:

string[] temp = new string[] { "1,2,3|4,5,6|7,8,9", "10,11,12|13,14,15", "16,17,18"};
var result = String.Join(",", temp.Select(x => x.Split('|').FirstOrDefault())
                                   .ToList());

使用null和空值:

string[] temp = new string[] { "1,2,3|4,5,6|7,8,9", "10,11,12|13,14,15", "16,17,18", "", null };
var result = String.Join(",", temp.Select(x => x?.Split('|').FirstOrDefault())
                                   .Where(x => !string.IsNullOrWhiteSpace(x))
                                   .ToList());