相关疑难解决方法(0)

Laravel模式验证管道字符问题

使用Laravel框架我需要根据一组有效值检查提交字段的值.

问题是Laravel使用了| 用于分隔属于字段的验证规则的字符.

这并不能正常工作,它抛出一个"的preg_match:没有结束符'/’发现":

'my_field' => 'match:/^(value1|value2|different value|yet another)$/'
Run Code Online (Sandbox Code Playgroud)

|如果\角色没有帮助,在这种情况下如何逃脱角色呢?

regex validation laravel

26
推荐指数
1
解决办法
9324
查看次数

Laravel 5.4 - 使用Regex进行验证

以下是项目名称的规则:

$this->validate(request(), [
    'projectName' => 'required|regex:/(^([a-zA-z]+)(\d+)?$)/u',
];
Run Code Online (Sandbox Code Playgroud)

我试图添加规则,以便它必须从一个字母开始,或者可以以数字结尾但最不是.a-zA-z

项目名称的有效值:

myproject123
myproject
MyProject
Run Code Online (Sandbox Code Playgroud)

项目名称的值无效:

123myproject
!myproject
myproject 123
my project
my project123
Run Code Online (Sandbox Code Playgroud)

我在网上尝试了我的正则表达式:

在此输入图像描述

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

它应该工作,但我可以通过验证project 123.

更新:它确实有效,我只是在错误的控制器中测试它,对不起......但也许它会帮助其他人

php laravel laravel-5 laravel-5.4

26
推荐指数
1
解决办法
6万
查看次数

正则表达式验证器接受0到5范围内的十进制数0或5的数字

我正在尝试编写一个正则表达式验证器来接受只有小数部分0或5且在0-5范围内的数字.例如:

-1          false
-.5         false
-0          false

000000      true
0.0         true
0000.       true
0           true
.50000000   true
00001.      true
01.50       true
2.00000     true
2.5000      true
03          true
03.5        true
0004        true
0004.5000   true
00005.0     true

0           true
0.5         true
1           true
1.5         true
2           true
2.5         true
3           true
3.5         true
4           true
4.5         true
5           true

1.05        false
5.5         false
10          false
20          false
30          false
40          false
50          false
Run Code Online (Sandbox Code Playgroud)

无论数字前面或后面有多少0都可以有效.

我想这一个^[0-5]+(?:\.[05]0?)?$,但它的情况下失败:0000.,.5,001. …

regex

4
推荐指数
1
解决办法
702
查看次数

标签 统计

laravel ×2

regex ×2

laravel-5 ×1

laravel-5.4 ×1

php ×1

validation ×1