判断一个字符串是不是数字的方法:
1. 最简单的方法
public bool IsNumber(string str) { int number = 0; return int.TryParse(str,out number); }
这个方法适用于日常生活中遇到的大多数情况,可是如果碰到极端的情况,比如超过了int类型所能承受的最大值int.MaxValue(2147483647)就会失败。
2.一个万无一失的方法
public static bool IsNumber(string numericText) { bool isNumber = false; foreach (char c in numericText) { isNumber = char.IsNumber(c); if (!isNumber) { return isNumber; } } return isNumber; }
这个方法效率不是很高,需要遍历字符串。
3.强大的正则匹配
正则就是为匹配验证而生的。
public static bool IsNumber(string text) { Regex regex = new Regex(@"^[-+]?[0-9]*\.?[0-9]+$"); return regex.IsMatch(text); }