检查字符串是否包含某个单词(但不是全部)

问题描述 投票:0回答:1

又是我! (现在开始认识对方; D)我在应用程序(联系人管理器)中创建了一个搜索栏。当您开始在此栏中输入内容时,每个字母都会更新以下代码:

private void Text_search_TextChanged(object sender, EventArgs e)
{
    if(String.IsNullOrWhiteSpace(text_search.Text))
    {
        label_rechercher.Show();
    }
    else
    {
        label_rechercher.Hide();
        //here
        for(int i = 0; i<nomContact.Count; i++)
        {
            if(text_search.Text.Contains(nomContact[i]))
            {
                MessageBox.Show(nomContact[i]);
            }
        }
    }
}

“列表名称联系人”包含所有联系人的名称

因此它查找联系人,只是我的messageBox仅在提供完整的名字时才会激活。因此,这是我的问题:我们如何做到使它成为一个字母,单词或句子,而不是在所有单词都被找到的情况下,才能够提出建议?

谢谢:)

c# search
1个回答
0
投票

您可以使用类似的Linq扩展方法来代替循环:

using System.Linq;

var listSearch = nomContact.Select(nom => nom.Contains(text_search.Text)).ToList();

因此,您将获得包含所搜索文本的所有项目的列表。

© www.soinside.com 2019 - 2024. All rights reserved.