str s="123"
int i=0'
可以使用bool b=int.tryprase(s,out i);
如果b=true说明就是数字,并且i就是转化过的数字类型,否则转化失败,就说明不全是数字
正则表达式
只含“数字” string str = @"^\d+$";
Regex regex = new Regex(str);
string str1 ="11111";
if (regex.IsMatch(str1))
MessageBox.Show(true.ToString());
else
MessageBox.Show(false.ToString());
Information.IsNumeric 方法
返回一个 Boolean 值,指示表达式的计算结果是否为数字。
命名空间: Microsoft.VisualBasic
程序集: Microsoft.VisualBasic(在 Microsoft.VisualBasic.dll 中)
参数
Expression
类型:System.Object
必选。Object 表达式。
返回值
类型:System.Boolean
返回一个 Boolean 值,指示表达式的计算结果是否为数字。
最简洁的办法是double.tryparse,函数值返回true,表示可以转换
还有一个函数是convert.todouble,转换时报错表示不能转换
正则匹配的办法也行,不过不简洁
用For循环逐位判断string[i]的ASCII码是不是在48到57之间
只要有不符合的就跳出循环 输出结果