C# 在C中的条件下获取列表的索引值

C# 在C中的条件下获取列表的索引值,c#,linq,list,C#,Linq,List,我有一个字符串列表,比如 list[0]="want" list[1]="to" list[2]="create" list[3]="user" list[4]="account" 我需要获取用户字符串的索引值。i、 e,3。我试过这样做 list.Where(o => o.Contains("user")).ToList(); 我知道它不会返回索引位置。我怎样才能做到这一点?是否有帮助?如果需要获取您完全了解的现有字符串的索引,请使用: int index = list.IndexO

我有一个字符串列表,比如

list[0]="want"
list[1]="to"
list[2]="create"
list[3]="user"
list[4]="account"
我需要获取用户字符串的索引值。i、 e,3。我试过这样做

list.Where(o => o.Contains("user")).ToList();

我知道它不会返回索引位置。我怎样才能做到这一点?是否有帮助?

如果需要获取您完全了解的现有字符串的索引,请使用:

int index = list.IndexOf("user");
如果字符串仅包含用户,但可能是您没有的较大字符串:

int index = list.FindIndex(item => item.Contains("user"));

在这两种情况下,如果索引为0或更大,则索引和负值表示未找到该项。

int idx=list.IndexOfuser;这很好,但我只想指出,如果使用FindIndex版本,如果有多个元素包含user,它将只返回第一个元素的索引。很难从问题/示例中判断这是否是一个问题。IndexOf也是如此。