C#Ends具有多个值

时间:2013-11-29 09:44:55

标签: c#

如何在EndsWith中获得更多值?

例如

if(textbox1.Text.EndsWith("hotmail.com" && "anothermail.com"){

}

怎么办?

4 个答案:

答案 0 :(得分:4)

您可以创建扩展方法:

public static bool EndsWithAny(this string str, params string[] search)
{
    return search.Any(s => str.EndsWith(s));
}

//Call
bool found = str.EndsWithAny("hotmail.com", "anothermail.com");

答案 1 :(得分:2)

如果要获取值以一个字符串结尾的结果,或以另一个字符串结尾,则将两个检查与逻辑或:

结合使用
if(textbox1.Text.EndsWith("hotmail.com") || textbox1.Text.EndsWith("anothermail.com")) { ... }

答案 2 :(得分:1)

string[] ends = new string[] { "hotmail.com" , "anothermail.com" };
string text = "example.hotmail.com2";
bool endsWith = ends.Any(e => text.EndsWith(e));

答案 3 :(得分:1)

您可以使用收藏集Any + EndsWith

var mails = new[] { "hotmail.com", "anothermail.com" };
bool endsWithAny= mails.Any(textbox1.Text.EndsWith);