日期:2014-05-17  浏览次数:20830 次

list集合中如何查找匹配的索引。
例如:
List<string> ss = new List<string>();
  ss.add("用户127.0.0.1:1000");
  ss.add("用户127.0.0.1:1001");
  ss.add("用户127.0.0.1:1002");

  我要找到 127.0.0.1:1001 包含这个字符串的list索引
  indexof 方法只能匹配 "用户127.0.0.1:1001" 这样的查找方式

  

------解决方案--------------------

int index = ss.FindIndex(c => c.Contains("127.0.0.1:1001"));

------解决方案--------------------
 List<string> item1 = new List<string>();
            item1.Add("aaa");
            item1.Add("bbb");
            item1.Add("用户127.0.0.1:1000");
            item1.Add("用户127.0.0.1:1001");
            item1.Add("用户127.0.0.1:1002");
            string item = item1.First(str => str.Contains("127.0.0.1:1000"));            

item ="用户127.0.0.1:1000"
------解决方案--------------------
var query = ss.Select((x, i) => new { x, i }).Where(x => x.x == "127.0.0.1:1000").Select(x => x.i);
foreach (var item in query)
    Console.WriteLine(item);