我有一个项目列表,如
A1
A2
A3
B1
C1
F1
1A
2A
我使用以下代码获取表示每个组的第一个字母的不同字符串列表:
var result = groups.Select(xx => xx.Name.Substring(0, 1)).Distinct().ToList();
Run Code Online (Sandbox Code Playgroud)
所以这会返回如下列表:
A
B
C
F
1
2
这一切都很好,除了数字......我有一个简单的方法来修改代码只返回字母,所以如果它是一个数字,它将不会被添加到results组中?
var result = groups.Select(x => x.Name[0])
.Where(c => char.IsLetter(c))
.Distinct()
.ToList();
Run Code Online (Sandbox Code Playgroud)
请注意,上面的查询将生成一个List<char>.如果你想要一个,List<string>那么你需要做这样的事情:
var result = groups.Select(x => x.Name.Substring(0, 1))
.Where(s => char.IsLetter(s[0]))
.Distinct()
.ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
91 次 |
| 最近记录: |