2017-03-06 10 views
-4

私は複数の文字列を持っています。各配列内には、 '|'を使用する文字列があります。セパレータとして。私が必要とするのは、配列の最初の要素が '|'まで続く文字列を作成することです。split string array c#

この例では、私は6485,6486,6487,6509,6510,6511,6533,6534,6535が必要です。元の文字列を分割する enter image description here

+3

だから何を試しましたか? – BugFinder

+0

興味深い問題。がんばろう! – InBetween

+4

SOは私のコードサービスを書いているわけではないので、この質問を議論の対象外としている。 – InBetween

答えて

1

使用String.Split()は、次いで、別々のアレイ内の最初のものを格納使用してそれらを

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

を連結するString.Join()を使用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()); 

と空値と空値:

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());