Est*_*aya 23
使用LINQ:
return array.Any(s => s.Equals(myString))
Run Code Online (Sandbox Code Playgroud)
当然,你可能想要考虑文化和案例,但这是一般的想法.此外,如果"匹配"不等于你的意思,你可以随时使用"匹配"所需的功能.
Som*_*mer 12
我真的不能告诉你这是否是绝对最快的方式,但我通常做的一个方法是:
这将检查字符串是否包含数组中的任何字符串:
string[] myStrings = { "a", "b", "c" };
string checkThis = "abc";
if (myStrings.Any(checkThis.Contains))
{
MessageBox.Show("checkThis contains a string from string array myStrings.");
}
Run Code Online (Sandbox Code Playgroud)
要检查字符串是否包含数组的所有字符串(元素),只需myStrings.Any将if语句更改为myStrings.All.
我不知道这是什么类型的应用程序,但我经常需要使用:
if (myStrings.Any(checkThis.ToLowerInvariant().Contains))
Run Code Online (Sandbox Code Playgroud)
因此,如果您要检查用户输入,那么无论用户是否输入大写字母中的字符串,这都可以使用ToLowerInvariant()轻松反转.
希望这有帮助!
小智 6
这对我很好:
string[] characters = new string[] { ".", ",", "'" };
bool contains = characters.Any(c => word.Contains(c));
Run Code Online (Sandbox Code Playgroud)
您可以将字符串与正则表达式或语句组合起来,然后“一次完成”,但从技术上讲,正则表达式仍会在内部执行循环。最终,循环是必要的。
| 归档时间: |
|
| 查看次数: |
40705 次 |
| 最近记录: |