2011-11-01 42 views
-1

在我有類似下面我如何分割字符串像顯示下面的例子

string str = "ABE,1A2B3CD,1B2A3C,1A2BC3E"; 

字符串我怎樣才能拆分此字符串,並將其設置到列表中像下面?

List<string> lst = new List<string>(); 
lst[0] = "A"; 
lst[1] = "B"; 
lst[2] = "E"; 
lst[3] = "1A2B3CD"; 
lst[4] = "1B2A3C"; 
lst[5] = "1A2BC3E"; 
+2

您可能要解釋你如何做一個列表到達。這不是一個簡單的[SPLIT](http://msdn.microsoft.com/en-us/library/system.string.split.aspx)上一個逗號。你如何到達A/B/E? –

+1

你在這裏遵守什麼規則?它是否總是以逗號分割列表,然後將第一個字符串中的每個字符視爲自己的條目?一個例子不會讓我們繼續下去。 –

+0

-1讓我們猜你想要什麼。你應該在問題中解釋這些事情。 –

回答

4

嘗試這樣的:

string[] s = str.Split(','); 
if (s.Length > 0) 
{ 
    foreach (char c in s[0]) 
     lst.Add(c.ToString()); 
    for (int i = 1; i < s.Length; i++) 
     lst.Add(s[i]); 
} 

我認爲你需要拆分的逗號分隔每個字符串,並且對於第一隻,每一個字符...

+0

盡力澄清問題:) – sehe

+0

@sehe:thanks;) – Marco

+0

我自己現在嘗試解釋它;) – sehe

2

假設你希望字符串不以數字拆分成獨立的字符開始:

using System.Text.RegularExpressions; 

var split = str.Split(',').SelectMany(s => Regex.IsMatch(s, @"^\d") 
      ? new [] {s} 
      : s.ToCharArray().Select(c => c.ToString())) 
    .ToList(); 

分裂:

{ "A", "B", "E", "1A2B3CD", "1B2A3C", "1A2BC3E" }