【问题标题】:Regular Expression for percents (with % sign) in ASP.Net RegEx ValidatorASP.Net RegEx Validator 中百分比的正则表达式(带 % 符号)
【发布时间】:2011-01-25 16:12:02
【问题描述】:

我需要一个用于 ASP.Net (4) 正则表达式验证控件的正则表达式。它需要是一个正则表达式验证器,以支持本文范围之外的其他动态行为..

我正在使用以下内容,但如果用户在数字后面输入 % 符号(这是我的规范的要求),则会失败:

^(100(?:\.0{1,2})?|0*?\.\d{1,2}|\d{1,2}(?:\.\d{1,2})?)$

我尝试在最后添加一个^(?>%?) 的原子组,但没有运气,在阅读了优秀的帖子后

Regular expression greedy match not working as expected

有人有什么想法吗?

【问题讨论】:

    标签: asp.net regex validation


    【解决方案1】:

    试试这个

    ^(100(?:.0{1,2})?%?|0*?.\d{1,2}%?|\d{1,2}(?:.\d{1,2})?%?)$
    

    【讨论】:

    • 谢谢,这适用于高达并包括 100.00% 的数字!我实际上需要让更多的数字,因为“配额百分比”是一个经常超过 100% 的可能指标。抱歉,我应该解释一下!
    • 这个接受 22222 这是错误的..你可以在这里测试它:regex101.com
    【解决方案2】:

    试试这个:

    ^0*(100(\.00?)?|[0-9]?[0-9](\.[0-9][0-9]?)?)%?$
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-15
      • 2012-12-08
      • 2017-01-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-20
      相关资源
      最近更新 更多