我想验证数据库中数据类型为float的字段。请告诉我float数据类型所需的表达式和正则表达式,以便用户只能输入float中的数字。
例如这是错误
else if(!Regex.IsMatch(lowerlimit,
@"[+-]?(?:(?:\d+\.\d*)|(?:\d*\.\d+))"))
{
ModelState.AddModelError("lowerlimit", "Please enter valid lower limit");
}
由于 里兹
答案 0 :(得分:1)
[+\-]?(?:(?:\d+(\.\d*)?)|(?:\d*\.\d+))
如果您想让它更具可读性,可以删除非捕获?:
标记。
[+\-]?((\d+(\.\d+)?)|(\d*\.\d+))
注意:此正则表达式只匹配带小数点的浮点数 - 而不是整数。
答案 1 :(得分:0)
尝试这样的事情:
^\d*\.?\d*$
答案 2 :(得分:0)
取决于您想要允许的浮点数文本表示的样式。
科学记数法:
[-+]?\d(\.\d+)?([eE]-?\d+)?
简单的小数点:
-?\d+(\.\d+)?
允许空整数部分:
[-+]?((\d*\.\d+)|(\d+(\.\d+)?))