因为我想让我的 textbox只能输入字符,所以用了正则表达式 if(Regex.IsMatch(textbox1.text,"[a-zA-Z,]+"))
{
return true;
}
else
{
return false;
}现在问题是,如果我第一位输入的数字,报错---正确如果第一位输入的是字符,第二位是数字,就不报错?如何判断我当前输入的字符?
{
return true;
}
else
{
return false;
}现在问题是,如果我第一位输入的数字,报错---正确如果第一位输入的是字符,第二位是数字,就不报错?如何判断我当前输入的字符?
解决方案 »
- 线程中修改 ListBox值的疑难问题
- 换行符都变成■了
- C# 用FileInfo类删除文件报对xxxx路径的访问被拒绝
- 注册代码,运行时填写完内容点注册出现问题?这句int i = Convert.ToInt32(com.ExecuteNonQuery());
- 我想问一下exe和dll不在一个目录怎么办?
- 关于建立视图的问题,两个表,一个表要里面所有的数据,另外一个表只要最新一条数据,如何搞?
- 重绘是不是就是把onpain()的代码重新执行一遍?
- WinForm中如何获得本局域网的IP列表?
- 关于完成端口和线程池
- visual C# 编译器问题!急,在线等着.....(完事马上结帖)
- 把日文转换为假名有什么思路吗?
- 谁能帮看一下这个XML文档为什么不是良构的?
Regex rx = new Regex(@"^[a-zA-Z]+$");
string s = Console.ReadLine();
while (s != "exit")
{
Match m = rx.Match(s);
if (m.Success)
{
Console.WriteLine("yes");
}
else
{
Console.WriteLine("no");
}
s = Console.ReadLine();
}
这样,我判断的就是textbox1.text里的所有数值那就会出现我所说的问题,如果我第一位输入的数字,报错---正确如果第一位输入的是字符,第二位是数字,就不报错?如何判断我当前输入的字符?
private void textbox1_TextChanged(){
if(Regex.IsMatch(textbox1.text,"[a-zA-Z,]+"))
{
return true;
}
else
{
return false;
}
}
string s = Console.ReadLine();
while (s != "exit")
{
Match m = rx.Match(s);
if (m.Success)
{
Console.WriteLine("yes");
}
else
{
Console.WriteLine("no");
}
s = Console.ReadLine();
}
//0~9數字范圍。
private int start = 48;
private int end = 57;
private void Mask1_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
{
try
{
int input = e.KeyChar ;
if ( input.Equals( 8 ) )
{
return ;//空格
}
if ( e.KeyChar.Equals('.') && !Mask1.Text.Length.Equals(0))
{
e.Handled = true;
SendKeys.Send("{tab}");
return ;
}
if ( input < start || input > end )
{
e.Handled = true;
}
}
catch( Exception ex )
{
MessageBox.Show( ex.Message );
}
}
在textbox的KeyUp事件里,去判断每个按下的键是否符合要求,不符合要求给予出错提示