2

我有一个Strings 列表。

如何检查Strings 列表是否包含带有前缀的字符串2#

我看到了这个: 在字符串列表中查找子字符串

我尝试了以下方法:

if ((startId == item.ID.ToString())
       && (item.NextButtons.Contains(s => s.Contains("2#")))) ;
   {
     OK = false;
   }
4

2 回答 2

6

如果我理解正确:

yourList.Any(s => s.Contains("2#"))

使用 LINQAny方法来确定集合的任何元素是否满足条件。

条件是一个 lambda 方法,它将string列表中的每个元素作为输入参数并检查它是否Contains为 string "2#"。它这样做直到找到第一个,然后返回trueor false

如果你想返回实际的字符串,你可以使用FirstOrDefault方法而不是Any. null如果没有找到,它将返回字符串或。

编辑:如果2#必须在字符串的开头,请参阅@Some1.Kill.The.DJ 的答案。

于 2012-12-07T15:52:55.193 回答
3

你想 2#在他们面前..

所以,应该是

yourList.Any(s => s.StartsWith("2#"));
                    -----------
于 2012-12-07T15:58:05.117 回答