如何在欧芹验证中验证负数、浮点数

How to validate negative, float numbers in parsley validation

我有一个 select 框,其中选项包含负数、浮点数。 我如何在解析中验证它。

<select class="form-control"  data-parsley-pattern="^[0-9]*\.[0-9]{2}$" id="duration"  name="duration">
    <option value="-1" >Not Strated</option>
    <option value="0" >Just Strated</option>
    <option value="1.6" >1.6 % Done</option>
    <option value="2">2 % Done</option>
    <option value="2.6">2.6 % Done</option>
    <option value="3">3 % Done</option>
    <option value="3.6">3.6 % Done</option>
    <option value="4">4 % Done</option>
    <option value="4.6">4.6 % Done</option>
    <option value="5">5 % Done</option>
   //And So on...
</select>

我已经尝试了一些关于 SO 的解决方案,但没有用。

data-parsley-pattern="^[0-9]*\.[0-9]{2}$"

我发现验证欧芹中负数和浮点数的解决方案是。

^-?[0-9]\d*(\.\d+)?$

您的图案缺少一些部分。
它没有捕获负数,所以我在第一个 "group".
中添加了一个 - 我加了?使浮动部分不是可选的。
我搬家了 。到 [ ] 并添加 * 使零或更多成为可能。

^[-0-9]+?[\.0-9]*$

https://regex101.com/r/i5qt3m/2

OP 找到了答案:^-?[0-9]\d*(\.\d+)?$