包含在列表中的C#字符串解析

Nom*_*Nom 1 c# split list

我正在尝试为c#创建一个解析系统,以阻止我的程序从位于列表中的"禁止"网站中获取图像.我已经尝试过使用bool类来做一个Regex.Replace操作,遗憾的是它没有用完.

为了详细说明我想要的内容,这是一个例子:我有一个List BannedSites = new List {"site"};

 if(Bannedsites.Contains(input))
 { 
    Don't go to that site
 }
 else 
 { 
    Go to that site
 }
Run Code Online (Sandbox Code Playgroud)

虽然错误我大多得到的是我有"的网站"列表中,但如果有人做"现场"用空格之后它转到else语句,因为它不直接在列表中存在,或者如果有人"现场?" 我们知道网址末尾的问号通常不会对访问网站产生影响,因此他们再次绕过它.是否可以执行某些操作,如果输入包含"site",WITHING字符串,则不能访问该站点.很抱歉,如果这是一个简单的代码,虽然我无法弄清楚,谷歌没有帮助.

提前致谢!

Ry-*_*Ry- 5

您可以使用LINQ .Any来帮助:

if(Bannedsites.Any(x => input.Contains(x)) {
    // Don't go to that site
} else {
    // Go to that site
}
Run Code Online (Sandbox Code Playgroud)

请记住.ToUpperInvariant()在所有内容上使用它以使其不区分大小写.

  • 谨防误报,例如"wokersexchange"包含"sexchange" (2认同)