我有String
的列表。
如何检查String
列表中是否包含前缀为2#
的字符串?
我看到了这个: Find substring in a list of strings
我尝试了以下内容:
if ((startId == item.ID.ToString())
&& (item.NextButtons.Contains(s => s.Contains("2#")))) ;
{
OK = false;
}
答案 0 :(得分:6)
如果我理解正确:
yourList.Any(s => s.Contains("2#"))
使用LINQ Any
方法确定集合中的任何元素是否满足条件。
条件是一个lambda方法,它将列表中的每个string
元素作为输入参数,并检查它是Contains
字符串"2#"
。它会在找到第一个之前执行此操作,然后返回true
或false
。
如果要返回实际字符串,可以使用FirstOrDefault
方法而不是Any
。然后它将返回字符串或null
,如果没有找到。
编辑:如果2#
必须在字符串的开头,请参阅@ Some1.Kill.The.DJ的答案。
答案 1 :(得分:3)
你想要2#
在他们面前..
所以,它应该是
yourList.Any(s => s.StartsWith("2#"));
-----------