gpt4 book ai didi

c# - 使用 Exact Word 的 LINQ 过滤列表

转载 作者:行者123 更新时间:2023-11-30 19:43:17 25 4
gpt4 key购买 nike

我有这个字符串列表。我只想过滤掉那些与我搜索的关键字完全匹配的项目。例如,我有关键字“in”,我希望结果仅过滤那些具有确切单词“in”的项目。请帮忙。

代码

static IEnumerable<string> GetData()
{
var strList = new List<string>
{ "I'm in love",
"Coffee contains caffeine",
"The best inn so far",
"Inside of me",
"in the darkness"};
var filteredItems = strList.Where(x => x.Contains("in"));
return filteredItems;
}

我只想从我的列表中返回项目 1 和项目 5,因为它们是具有确切单词“in”的项目。

enter image description here

最佳答案

这是一种方法:

var filteredItems = strList.Where(x => (" " + x + " ").Contains(" in "));

或者这个:

var filteredItems = strList.Where(x => Regex.IsMatch(x, "(^| )in($| )"));

不区分大小写的版本:

var filteredItems = strList.Where(x => (" " + x .ToLower() + " ").Contains(" in "));
var filteredItems = strList.Where(x => Regex.IsMatch(x, "(^|\s)in($|\s)",
RegexOptions.IgnoreCase));

关于c# - 使用 Exact Word 的 LINQ 过滤列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15537941/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com