一、示例
输入字符串为数值:^-?((\d+\.\d+)|\d+)?$
^ 开始标记
? 匹配前面-零次或一次,即出现一次负号或者不出现
\d 匹配一个数字字符。等价于[0-9],即出现一个0-9的数字
+ 匹配前面的数字一次或多次。即出现一个或多个0-9的数字
\. 转义小数点。用于连接后面小数部分
| 或。即两个选项间匹配一项
$ 结束标记
二、应用
/// <summary>
/// 检查输入的字符串是否为数值类型
/// </summary>
/// <param name="strValue">输入字符串</param>
/// <returns>输入正确:false;输入错误:true</returns>
static public bool CheckValueValidating(string strValue)
{
if (string.IsNullOrWhiteSpace(strValue))
return true;
strValue = Regex.Replace(strValue, @"\s", "");//空白字符
System.Text.RegularExpressions.Regex rex = new System.Text.RegularExpressions.
Regex(@"^-?((\d+\.\d+)|\d+)?$", RegexOptions.IgnorePatternWhitespace);
if (!(rex.IsMatch(strValue)))
{
return true;
}
else
{
return false;
}
}


