REGEX百分比2小数,带+和负值

时间:2016-06-06 10:50:43

标签: java regex

这是我的正则表达式,用2位小数检查百分比,最高为100

^-?(100([.]0{1,2})?)$|(^\d{1,2}([.]\d{1,2})?)

但仅适用于99.16而不是-99.16

如何允许减去百分比?

2 个答案:

答案 0 :(得分:3)

您有两个替代方案:

  • 100个特殊情况
  • 0..99 precent的标准案例

两个备选方案都可以减号-):

  (^-?(100([.]0{1,2})?)$)|(^-?[0-9]{1,2}([.][0-9]{1,2})?$)

作为评论,您在匹配数字时可能需要[0-9] 而不是任何被视为数字'\d'的字符,其中包括波斯数字۰ ۱ ۲ ۳ ۴ ۵ ۶ ۷

答案 1 :(得分:2)

你刚刚错过了^ - ?在第二个选项

^-?(100([.]0{1,2})?)$|(^-?\d{1,2}([.]\d{1,2})?)