先交代一下问题背景,
我有一个windowform,这个窗体上仅有两个和问题相关的空间,textbox1和button1,我要在textbox1中输入QQ号,要求5到8位的数字,button1的click对其输入进行检测。代码如下,
private bool eerr()
{
Regex zz = new Regex("\\d{5,8}");
if (zz.IsMatch(textBox1.Text))
{
MessageBox.Show("DATA ENTRY OK!");
return false;
} Regex zz1 = new Regex("\\d{1,4}");
if (zz1.IsMatch(textBox1.Text))
{
MessageBox.Show("Digital too short!");
return false;
} Regex zz2 = new Regex("\\d{9,}");
if (zz2.IsMatch(textBox1.Text))
{
MessageBox.Show("Digital too long!");
return false;
} Regex zz3 = new Regex("[~!@#$%^&*()=+[\\]{}''\";:/?.,><`|!·¥…—()\\-、;:。,》《]");
if (zz3.IsMatch(textBox1.Text))
{
MessageBox.Show("Please don't input illegal character!");
return false;
} return true;
} private void button1_Click(object sender, EventArgs e)
{
if(!eerr())
{
return;
}
}问题,
当我输入1到4位数字或者非法字符时,message提示都正常,但是当我输入9位以上的纯数字时,只提示"DATA ENTRY OK!",并没有出现我期望看到的"Digital too long!",求解=。=
我有一个windowform,这个窗体上仅有两个和问题相关的空间,textbox1和button1,我要在textbox1中输入QQ号,要求5到8位的数字,button1的click对其输入进行检测。代码如下,
private bool eerr()
{
Regex zz = new Regex("\\d{5,8}");
if (zz.IsMatch(textBox1.Text))
{
MessageBox.Show("DATA ENTRY OK!");
return false;
} Regex zz1 = new Regex("\\d{1,4}");
if (zz1.IsMatch(textBox1.Text))
{
MessageBox.Show("Digital too short!");
return false;
} Regex zz2 = new Regex("\\d{9,}");
if (zz2.IsMatch(textBox1.Text))
{
MessageBox.Show("Digital too long!");
return false;
} Regex zz3 = new Regex("[~!@#$%^&*()=+[\\]{}''\";:/?.,><`|!·¥…—()\\-、;:。,》《]");
if (zz3.IsMatch(textBox1.Text))
{
MessageBox.Show("Please don't input illegal character!");
return false;
} return true;
} private void button1_Click(object sender, EventArgs e)
{
if(!eerr())
{
return;
}
}问题,
当我输入1到4位数字或者非法字符时,message提示都正常,但是当我输入9位以上的纯数字时,只提示"DATA ENTRY OK!",并没有出现我期望看到的"Digital too long!",求解=。=
解决方案 »
- 在线等啊、。。。。windowsform的问题、、、、各位大虾!
- 如何知道一个网站是否需要带有COOKIE做某些事情呢?
- .net OPC_AE 客户端确认,为什么OPC服务端回调函数不触发
- 大侠们帮忙看看。
- 如何用XmlSerializer序列化Image数组
- webBrowser的问题 在webBrowser 中的内容改变时怎样它弹出的对话框
- 同一類型化數據集中的兩個適配器update()時如何讓它以事務的方式進行呀。
- 请教高手,在C#中,为什么TabStrip组件没有click事件呢?
- 一个关于ListView控件问题
- select 问题
- 请用很容易让人明白的例子说明下ERP是什么
- winform中怎么在页面中传值?
不然 9位的QQ 因为也符合含有5-8位数字的条件,所以也匹配成功了
行受 行尾Regex zz = new Regex("^\\d{5,8}$");
if (zz.IsMatch(textBox1.Text))
{
MessageBox.Show("DATA ENTRY OK!");
return false;
}
Regex zz = new Regex("\\d{5,8}");
if (zz.IsMatch(textBox1.Text))
{
MessageBox.Show("DATA ENTRY OK!");
return false;
}孩子你都return了你还指望它能显示什么??