gpt4 book ai didi

php - Laravel 双重验证正则表达式不起作用

转载 作者:行者123 更新时间:2023-12-03 20:44:09 24 4
gpt4 key购买 nike

我正在尝试用两位小数验证 double 数,但我无法实现。
这是我尝试过的正则表达式和错误,我得到了:

第一次尝试:

$validation = ['price' => 'regex:[0-9]+(\.[0-9][0-9]?)?'];

错误:

preg_match(): Unknown modifier '+'



第二次尝试:
$validation = ['price' => 'regex:[0-9]+(\.[0-9][0-9]?)?'];

错误:

preg_match(): Delimiter must not be alphanumeric or backslash



第三次尝试:
$validation = ['price' => 'regex:\d+(\.\d{2})?|\.\d{2}'];

错误:

preg_match(): Delimiter must not be alphanumeric or backslash



我从这个问题中得到了所有的正则表达式: Simple regular expression for a decimal with a precision of 2

我究竟做错了什么?或者还有其他方法可以在 Laravel 中验证带有两位小数的 double 数吗?

最佳答案

您需要使用正则表达式分隔符,最常见的是 /.../ 。此外,为了确保匹配整个字符串,您需要 anchor ,^ anchor 定在开头,$ anchor 定在结尾:

$validation = ['price' => 'regex:/^[0-9]+(\.[0-9][0-9]?)?$/'];

关于php - Laravel 双重验证正则表达式不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38947126/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com