您可以使用String.IndexOfAny(char[] anyOf)
方法(MSDN):
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text.IndexOfAny(letters) >= 0)
{
MessageBox.Show("Your word contains a or e.");
}
}
另外,请记住IndexOfAny 区分大小写(a
将不匹配A
)。
如果要创建不区分大小写的方法,可以创建扩展方法:
public static class StringIndexExtensions
{
public static bool CaseSensitiveContainsAny(this char[] matchChars, string textToCheck)
{
return matchChars.Any(c => textToCheck.IndexOf(
c.ToString(CultureInfo.InvariantCulture),
StringComparison.OrdinalIgnoreCase) >= 0);
}
}
然后您可以执行以下操作:
private void button1_Click(object sender, EventArgs e)
{
if (letters.CaseSensitiveContainsAny(textBox1.Text))
{
MessageBox.Show("Your word contains a or e.");
}
}