我有一个列表定义为:
List<string> content = new List<string>(){ "Hello This", "This is", "This" };
我想要一个代码来查找列表是否包含关键字 This,如果是,则获取它的第一次出现。
现有代码:
foreach(string line in content){
if(line.Contains("This"))
return line;
}
我想简单地知道是否有其他选择。如果我们知道完整的字符串,那么我们可以使用 List.Contains,但是对于子字符串,如何进行?
使用 .NET 2.0。请在不使用 LINQ 的情况下提出建议。
最佳答案
如 MSDN 所述, FindIndex
从 Framework 2.0
开始可用,可用于您的问题。
FindIndex
搜索与指定谓词定义的条件匹配的元素,并返回整个列表中第一个出现的从零开始的索引。
List<string> content = new List<string>() { "Hello This", "This is", "This" };
var index = content.FindIndex(p => p.Contains("This"));
if (index >= 0)
return content[index];
关于c# - 直接查找子字符串是否是列表/数组的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37134910/