1、在文本框输入,可在KeyPress事件里进行判断
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = !char.IsLetterOrDigit(e.KeyChar);
}
或者
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if ((e.KeyChar < 48 || e.KeyChar > 57) && (e.KeyChar != 8))
{
e.Handled = true;
}
}
2、用正则表达式
2-1
string s = "... ";
if (System.Text.RegularExpressions.Regex.Replace(s, "[0-9] ", " ").Length ==0)
{
//字符串只有字符(0~9)组成
}
2-2
string s = ".... ";
if(!System.Text.RegularExpressions.Regex.IsMatch(s,@ "^/d*$ "))
{
//字符串只有字符(0~9)组成
}
2-3
只能输入数字:"^[0-9]*$"。
只能输入n位的数字:"^/d{n}$"。
只能输入至少n位的数字:"^/d{n,}$"。
只能输入m~n位的数字:。"^/d{m,n}$"
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
只能输入非零的正整数:"^/+?[1-9][0-9]*$"。
只能输入非零的负整数:"^/-[1-9][]0-9"*$。
只能输入长度为3的字符:"^.{3}$"。
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输入由数字、26个英文字母或者下划线组成的字符串:"^/w+$"。
验证用户密码:"^[a-zA-Z]/w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证是否含有^%&',;=?$/"等字符:"[^%&',;=?$/x22]+"。
只能输入汉字:"^[/u4e00-/u9fa5]{0,}$"
3、用字符串轮询,可结合方法4
for(int ii=0;ii <str.Length;ii++)
{
if(str.substr(ii,1) > = "0 " && str.substr(ii,1) <= "9 ")
{
}
else
{
}
}
4、利用字符char方法
char.IsNumber(char)