(C#)怎样判断一个string中只含“数字”呢?

2024-10-28 12:32:47
推荐回答(5个)
回答1:

str s="123"
int i=0'
可以使用bool b=int.tryprase(s,out i);
如果b=true说明就是数字,并且i就是转化过的数字类型,否则转化失败,就说明不全是数字

回答2:

正则表达式

只含“数字” string str = @"^\d+$";
Regex regex = new Regex(str);
string str1 ="11111";
if (regex.IsMatch(str1))
MessageBox.Show(true.ToString());
else
MessageBox.Show(false.ToString());

回答3:

Information.IsNumeric 方法
返回一个 Boolean 值,指示表达式的计算结果是否为数字。

命名空间: Microsoft.VisualBasic
程序集: Microsoft.VisualBasic(在 Microsoft.VisualBasic.dll 中)
参数
Expression
类型:System.Object

必选。Object 表达式。

返回值
类型:System.Boolean

返回一个 Boolean 值,指示表达式的计算结果是否为数字。

回答4:

最简洁的办法是double.tryparse,函数值返回true,表示可以转换
还有一个函数是convert.todouble,转换时报错表示不能转换
正则匹配的办法也行,不过不简洁

回答5:

用For循环逐位判断string[i]的ASCII码是不是在48到57之间

只要有不符合的就跳出循环 输出结果