求一简单通用正则表达式

siazon 2013-10-23 05:25:38
金额控件验证:要非负数,可以为小数点或0,但位数不能超过10位,请问要怎么写

网上有找 \d+(\.{0,1}\d+){0,1} 是非负数。 d{10} 是不能超过10位,用|是分支条件。

有没有与门条件可以写,或者其它方法呀,在线等~~~~

叩谢!!!

...全文
88 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
_小黑_ 2013-10-23
  • 打赏
  • 举报
回复
/// <summary> /// 字符串是否是数字 /// </summary> /// <param name="strNum">要判断的字符串</param> /// <param name="decimalPlaces">最大几位小数,如果是整数就为0</param> /// <param name="isNegativeNum">是否可以为负数</param> /// <returns>是否是符合条件的数字</returns> public static bool IsNumber(string strNum, int decimalPlaces, bool isNegativeNum) { string regexStr = @"\d+"; if (decimalPlaces != 0) { regexStr += @"(\.\d{0," + decimalPlaces + "})?"; } if (isNegativeNum) { regexStr = @"-?" + regexStr; } regexStr = "^" + regexStr + "$"; return Regex.IsMatch(strNum, regexStr); }
q107770540 2013-10-23
  • 打赏
  • 举报
回复
^0|(?!0+$)\d+(\.\d+)?$
q107770540 2013-10-23
  • 打赏
  • 举报
回复
^0|(?!0+$)\d+(\.\d+)$ 位数不能超过10位, 这个可以设置textbox的maxlength来限制

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧