C# 中 LIST 和 LINQ 中的 SQL Like 搜索

KK9*_*K99 1 c# linq

我有一个列表,其中包含需要排除的单词列表。

我的方法是有一个包含这些单词的列表并使用 Linq 进行搜索。

List<string> lstExcludeLibs = new List<string>() { "CONFIG", "BOARDSUPPORTPACKAGE", "COMMONINTERFACE", ".H", };
string strSearch = "BoardSupportPackageSamsung";
bool has = lstExcludeLibs.Any(cus => lstExcludeLibs.Contains(strSearch.ToUpper()));
Run Code Online (Sandbox Code Playgroud)

我想找出 lstExcludedLibs 中存在的字符串 strSearch 的一部分。

事实证明,它只.any查找完全匹配的内容。是否有可能使用类似或通配符搜索

这在 linq 中可能吗?

我本可以使用 foreach 和 contains 来实现它,但我想使用 LINQ 来使其更简单。

编辑:我尝试过 List.Contains 但它似乎也不起作用

Ada*_*lph 5

你搞错了,应该是:-

List<string> lstExcludeLibs = new List<string>() { "CONFIG", "BOARDSUPPORTPACKAGE", "COMMONINTERFACE", ".H", };
string strSearch = "BoardSupportPackageSamsung";
bool has = lstExcludeLibs.Any(cus => strSearch.ToUpper().Contains(cus));
Run Code Online (Sandbox Code Playgroud)

顺便说一句 - 这只是一个观察结果,但是,恕我直言,您的变量名称前缀“lst”和“str”应该被省略。这是对匈牙利表示法的误解并且是多余的。