【问题标题】:validation for gpa in controller laravel在控制器 laravel 中验证 gpa
【发布时间】:2021-11-30 20:57:47
【问题描述】:

如何在控制器 Laravel 中验证 gpa 的表单输入,最小值为 0,00,最大值为 4,00。

现在我正在使用这样的验证

'gpa'   =>  'required|max:4|between:0,4|regex:/^[0-9]{1,3}(,[0-9]{3})*\,[0-9]+$/',

但如果我输入 4,01 或 4,98 验证为真。

谢谢。

【问题讨论】:

    标签: laravel validation


    【解决方案1】:

    您当前的正则表达式略有错误:

    ^[0-9]{1,3}(,[0-9]{3})*\,[0-9]+$
    

    第一部分 ([0-9]{1,3}) 捕获 1 到 9 范围内的 1、2 或 3 个数字。下一部分 ((,[0-9]{3})*) 捕获零个或多个逗号,然后再捕获 3 个数字。最后一部分捕获一个逗号和一个或多个数字。

    下一个正则表达式应该会更好:

    (?:[0-3](,\d{1,2})?)|4,00
    

    它捕获 0 到 3 范围内的一个数字,后跟一个逗号,后面跟着一个或两个数字(如果存在),或者它捕获 4,00

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-09
      • 2021-12-26
      • 2013-12-17
      • 1970-01-01
      • 2019-02-25
      • 2018-08-29
      • 2018-01-25
      • 2020-04-11
      相关资源
      最近更新 更多