c# - 直接查找子字符串是否是列表/数组的一部分

标签 c# arrays string list substring

我有一个列表定义为:

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 所述, FindIndexFramework 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/

相关文章:

C++ 声明一个基于非常量变量的数组?

javascript - 在 javascript (laravel) 中获取 php 数组

C++ 需要一些关于 Pig Latin 字符串的建议

c# - 如何等待有条件的任务?

c# - 处理 DataContext 和代码分析消息

c# - 无法更改关系,因为一个或多个外键属性不可为空

C++ _TCHAR* 到 std::string

c# - 使用 C# 获取真实 HTML 时出现问题....

java - 合并 k 数组的简单方法

java - DDMS java 分析器显示 : java/lang/StringBuilder. <init> - 它在我的代码中的什么位置?