C# 使用LINQ拆分列表中的项目
我想将列表中的每个项目分开,但在每个项目中,如果项目包含C# 使用LINQ拆分列表中的项目,c#,linq,C#,Linq,我想将列表中的每个项目分开,但在每个项目中,如果项目包含: names.SelectMany(n => n.Split(':')) .Dump(); 例如 将显示: Peter:John:Connor Paul Mary:Blythe 但是,是否有我可以使用的LINQ,它将提供以下列表: Peter John Connor Paul Mary Blythe 我可以使用以下方法进行此操作: foreach (var person in names) { x = per
:
names.SelectMany(n => n.Split(':'))
.Dump();
例如
将显示:
Peter:John:Connor
Paul
Mary:Blythe
但是,是否有我可以使用的LINQ,它将提供以下列表:
Peter
John
Connor
Paul
Mary
Blythe
我可以使用以下方法进行此操作:
foreach (var person in names)
{
x = person.split(":").ToList();
foreach (var personinlist in x)
{
// personinlist
}
}
…但这似乎很冗长,因为我肯定林克会更优雅 用于按:
names.SelectMany(n => n.Split(':'))
.Dump();
试试这个
names = names.SelectMany(n => n.Split(':')).ToArray();
@伊利亚伊万诺夫,谢谢!我总是忘记按字符串拆分需要新的数组,对字符也需要这样做:)我会尽量记住,请不要在问题标题中包含关于所用语言的信息,除非没有它就没有意义。标签就是为了这个目的。