LINQ:唯一名称列表

本文关键字:列表 唯一 LINQ | 更新日期: 2023-09-27 18:03:47

(简化(

我有一个字符串的全名列表。前6个字符始终是名字

List<string>()
  fredXXsmith
  aliceXFloor
  billXXjohnson
  fredXXperterson

如何在LINQ中从这些字符串中获得唯一的名字列表?

  fredXX 
  aliceX 
  billXX

LINQ:唯一名称列表

您只需要将全名投影到子字符串,然后使用Distinct:

var firstNames = names.Select(x => x.Substring(0, 6))
                      .Distinct();

这是假设(给定您的示例(始终至少有6个字符(用X填充(。如果需要List<string>,请将ToList调用添加到链的末尾。

names.Select(fullName => fullName.Substring(0, 6)).Distinct();

Substring为您提供前六个字符,Distinct为您提供唯一的结果。

names.Select(x => x.Substring(0,6)).Distinct()