文本框验证 2 个字符和 2 个整数
本文关键字:整数 字符 文本 验证 | 更新日期: 2023-09-27 17:56:25
我需要验证文本框 1 作为 2 个字母和 2 个整数,即 ab11
我如何设置它,我的文本框只接受 2 个字符和 2 个整数。
请帮帮我...
如果:
string myString = textbox1.Text;
然后验证:
If (Regex.IsMatch(myString, "^[A-Za-z]{2}[0-9]{2}$")))
{
return true;
}
else
{
return false;
}
private void textBox2_Validating(object sender, CancelEventArgs e)
{
var cn = textBox2.Text.Where(c => char.IsLetter(c)).Count();
var cd = textBox2.Text.Where(c => char.IsNumber(c)).Count();
if (cn >= 2 && cd >= 2)
{
//Success, Do Stuff
}
else
{
e.Cancel = true;
}
}
这应该有效。
private void textBox1_TextChanged(object sender, EventArgs e)
{
TextBox tb=sender as TextBox;
string text=tb.Text;
switch (text.Length)
{
case 1:
if (!char.IsLetter(text[0]))
tb.Text = "";
break;
case 2:
if (!char.IsLetter(text[1]))
tb.Text = text.Remove(1);
break;
case 3:
if (!char.IsNumber(text[2]))
tb.Text = text.Remove(2);
break;
case 4:
if (!char.IsNumber(text[3]))
tb.Text = text.Remove(3);
break;
default:
if(text.Length>4)
tb.Text = text.Substring(0, 4);
break;
}
textBox1.Select(tb.Text.Length, 0);
}
string str = textBox1.Text;
if (Regex.IsMatch(str, @"^(([A-Z]|[a-z])([A-Z]|[a-z])'d'd)$"))
{
MessageBox.Show("Valid");
}
参考:正则表达式类