2015-04-27 197 views
0

我有成千上萬行字符串類型的數據,我需要的是在AS之後提取字符串。例如,這行:提取部分字符串

CASE END AS NoHearing, 

我想會是什麼NoHearing,

這條線:

CASE 19083812 END AS NoRequset 

我需要的是NoRequset

的到目前爲止,我已經嘗試了幾種方法這樣做,但沒有成功。不能使用.split,因爲AS不是Char類型。

+3

。 https://msdn.microsoft.com/en-us/library/tabh47cf%28v=vs.110%29.aspx –

+0

假設「AS」只出現一次(並且必須發生,沒有沒有行)是否安全?如果不是,那麼「END AS」呢? – Robert

+1

用空格「'」分割並取出.Last()結果。 –

回答

2

如果這將是AS出現在字符串中的唯一方法:使用正則表達式我提取所有AS和逗號之間

noRequestString = myString.Substring(myString.IndexOf("AS") + 3); 
+0

感謝@juharr - 隨着習慣使用用戶界面,欣賞更正。 – browndwarf75

0

:您可以通過字符串分割

string data = @" 
CASE END AS NoHearing, 
CASE 19083812 END AS NoRequset 
"; 

var items = Regex.Matches(data, @"(?:AS\s+)(?<AsWhat>[^\s,]+)") 
       .OfType<Match>() 
       .Select (mt => mt.Groups["AsWhat"]) 
       .ToList(); 


Console.WriteLine (string.Join(" ", items)); // NoHearing NoRequset