数据类型验证代码
这是验证是否是整数的函数,速度绝对第一。
/// <summary>
/// 判断是否为整数。是返回true 否返回false。可以传入null。
/// </summary>
/// <param name="strVal">要判断的字符</param>
/// <returns></returns>
public static bool IsInt(string strVal)
{
if (strVal == null || strVal.Length == 0)
return false;
//判断是否只有.、-、 -.
if (strVal == "." || strVal == "-" || strVal == "-.")
return false;
//去掉第一个负号,中间是不可以有负号的
if (strVal.Substring(0,1) == "-")
strVal = strVal.Remove(0,1);
foreach(char c in strVal)
{
if (c < '0' || c > '9')
return false;
}
return true;
}
这是判断是否是一个小数,当然整数也是可以通过的,如果你不想通过整数的话,修改一下就可以了
/// <summary>
/// 判断是否是实数,是返回true 否返回false。可以传入null。
/// </summary>
/// <param name="strVal">要验证的字符串</param>
/// <returns></returns>
public static bool IsNumeric(string strVal)
{
//System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex("-?([0]|([1-9]+\\d{0,}?))(.[\\d]+)?$");
//return reg1.IsMatch(strVal);
//string tmp="";
//判断是否为null 和空字符串
if (strVal == null || strVal.Length == 0)
return false;
//判断是否只有.、-、 -.
if (strVal == "." || strVal == "-" || strVal == "-.")
return false;
//记录是否有多个小数点
bool isPoint = false; //是否有小数点
//去掉第一个负号,中间是不可以有负号的
if (strVal.Substring(0,1) == "-")
strVal = strVal.TrimStart('-');
foreach(char c in strVal)
{
if (c =='.')
if (isPoint)
return false;
else
isPoint = true;
if ((c < '0' || c > '9') && c != '.')
return false;
}
return true;
}
浙公网安备 33010602011771号