我如何检查是否一个字符串是多少? [英] How can I check if a string is a number?

查看:64
本文介绍了我如何检查是否一个字符串是多少?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想知道在C#中如何检查一个字符串是否是一个数字(和公正的数字)。

I'd like to know on C# how to check if a string is a number (and just a number).

例如:

141241   Yes
232a23   No
12412a   No

等等...

有特异功能?

推荐答案

查找 double.TryParse()如果你在谈论号码,如 1 -2 3.14159 。有些人所提出的建议 int.TryParse(),但将无法在小数。

Look up double.TryParse() if you're talking about numbers like 1, -2 and 3.14159. Some others are suggesting int.TryParse(), but that will fail on decimals.

double num;
string candidate = "1";
if (double.TryParse(candidate, out num))
{
    // It's a number!
}


编辑:由于卢卡斯低于所指出的,我们应该用一个小数点分隔符解析数字时,即这样做是安全的铭记线程的文化:


As Lukas points out below, we should be mindful of the thread culture when parsing numbers with a decimal separator, i.e. do this to be safe:

double.TryParse(候选,NumberStyles.AllowDecimalPoint,CultureInfo.InvariantCulture,出NUM)

这篇关于我如何检查是否一个字符串是多少?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆