C#数组包含部分

cou*_*011 5 c#

如何查找字符串数组是否包含字符串的某些部分?我有这样的数组

String[] stringArray = new [] { "abc@gmail.com", "cde@yahoo.com", "@gmail.com" };
string str = "coure06@gmail.com"

if (stringArray.Any(x => x.Contains(str)))
{
    //this if condition is never true
}
Run Code Online (Sandbox Code Playgroud)

我想在块中包含一个字符串完全或任何数组的Item的一部分时运行此块.

Jon*_*eet 18

假设你有LINQ可用:

bool partialMatch = stringArray.Any(x => str.Contains(x)); 
Run Code Online (Sandbox Code Playgroud)

即使没有LINQ也很容易:

bool partialMatch = Array.Exists(stringArray, x => str.Contains(x));
Run Code Online (Sandbox Code Playgroud)

或使用C#2:

bool partialMatch = Array.Exists(stringArray,
      delegate(string x) { return str.Contains(x)); });
Run Code Online (Sandbox Code Playgroud)

如果你正在使用C#1那么你可能必须这么做:)