假设我有一个字符串列表
var data = new List<string>{"fname", "phone", "lname", "home", "home", "company", "phone", "phone"};
我想列出所有值并将索引添加到重复项中
fname,
phone,
lname,
home,
home[1],
company,
phone[1],
phone[2]
或类似的
fname,
phone[0],
lname,
home[0],
home[1],
company,
phone[1],
phone[2]
两种解决方案都对我有用。
Linq可以吗?
答案 0 :(得分:1)
您可以使用LINQ GroupBy
来收集匹配项,然后使用Select
的计数版本来附加索引。
var ans = data.GroupBy(d => d).SelectMany(dg => dg.Select((d, n) => n == 0 ? d : $"{d}[{n}]"));