我有一个List 喜欢

   List<String> ListOne = new List<string> { "A-B", "B-C" };


我需要拆分每个字符串(如果包含“-”)并添加到同一列表中

所以结果会像

 { "A-B", "B-C","A","B","C" };


现在我正在使用像

       for (int i = 0; i < ListOne.Count; i++)
        {
            if (ListOne[i].Contains('-'))
            {
               List<String> Temp = ListOne[i].Split('-').ToList();
               ListOne= ListOne.Union(Temp).ToList();
            }
        }


有什么办法可以使用LINQ做到这一点?

最佳答案

ListOne.Union(ListOne.SelectMany(i => i.Split('-')))

10-08 00:02