列表元素拆分

时间:2014-02-23 06:57:01

标签: c#

如果有可能,我想分割List<string>的元素。例如,如果这是List的元素: 1 - 12/2015 - 12/2016 我需要从这个值中获取 1 我可以用lambda表达式还是其他任何一个表达式?如果是,请给我一个示例代码。感谢

3 个答案:

答案 0 :(得分:1)

在你的情况下,这应该这样做:

var str = "1 - 12/2015 - 12/2016";
var result = str.Split(new [] { '-', ' '},StringSplitOptions.RemoveEmptyEntries)
                .First();

List<string>

var list = new List<string> { "1 - 12/2015 - 12/2016" };
var results = list.Select(x => 
               x.Split(new [] { '-', ' '},StringSplitOptions.RemoveEmptyEntries)
                .First());

答案 1 :(得分:0)

我正在拆分一个列表的一个字符串,假设你是如何拥有字符串然后将拆分元素存储到一个不同的列表中。但是,您可以根据自己的喜好进行调整:

var list = new List<string>() { "1 - 12/2015 - 12/2016" };
var listParts = list[0].Split('-').Select(x => x.Trim()).ToList();
System.Diagnostics.Debug.WriteLine(listParts[0]); // output is 1

另一个例子(如果它只是一个字符串)不属于列表的一部分:

string entry = "1 - 12/2015 - 12/2016";
var entryParts = entry.Split('-').Select(x => x.Trim()).ToList();
System.Diagnostics.Debug.WriteLine(entryParts[0]); // output is 1

答案 2 :(得分:0)

using System.IO;
using System;
using System.Collections.Generic;

class Program
{
    static void Main()
    {

        List<string> lstrSample = new List<string>();
        lstrSample.Add("1 - 12/2015 - 12/2016");
        lstrSample.Add("2 - 12/2015 - 12/2016");
        List<string> lstrResult = new List<string>();
        foreach(string curStr in lstrSample)
        {
            lstrResult.Add(curStr.Replace(" ","").Split('-')[0]);
        }
        foreach(string s in lstrResult)
        {
            Console.WriteLine(s);
        }
    }
}