I decided to try out LINQ for the first time to try and solve this question.
The results of my first foray into the wonderful world of LINQ looked like this:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
List<string> list = new List<string>() { "fred-064528-NEEDED1", "xxxx", "frederic-84728957-NEEDED2", "sam-028-NEEDED3", "-----", "another-test" };
var result =
from s in list
where (from c in s where c == '-' select c).Count() == 2
select s.Substring(s.LastIndexOf("-") + 1);
foreach (string s in result)
Console.WriteLine(s);
Console.WriteLine("Press Enter");
Console.ReadLine();
}
}
}
I'd like to know how I can improve the above solution to this contrived little example. I'm not too interested in whether I've used the best validation method, or how I could localise "Press Enter" or anything like that; I'm just interested in using this example to learn a little more about LINQ.