就是這樣。在第二個' - '之後,包括' - '符號將會佔用任何東西(換行符除外)。
var exp = @"^\w*-\w*-(.*)$";
var match = Regex.Match("frederic-84728957-NEE-DED", exp);
if (match.Success)
{
var result = match.Groups[1]; //Result is NEE-DED
Console.WriteLine(result);
}
編輯:我回答另一個問題,它涉及到這一點。除此之外,它要求提供LINQ解決方案,我的回答如下,我發現非常清楚。
Pimp my LINQ: a learning exercise based upon another post
var result = String.Join("-", inputData.Split('-').Skip(2));
或
var result = inputData.Split('-').Skip(2).FirstOrDefault(); //If the last part is NEE-DED then only NEE is returned.
正如其他提到的SO線程是不是這樣做的最快方法。
我用了你的問題,因爲一點點的學習鍛鍊:http://stackoverflow.com/questions/3448269/pimp-my-linq-a-learning-exercise-based-upon-another-sa-question 謝謝! – 2010-08-10 11:33:30