Laravel Validate 验证规则遇到的一些问题
2017-01-05 本文已影响35人
Junting
正则 Regular Expression
// 使用者中写法,会给与报错,不支持解析和转义一些字符,下面给出错误提示图
'nickname' => 'required|string|max:10|regex:/^[\u4e00-\u9fa5a-zA-Z0-9_]+$/',
注: PHP正则表达式中不支持下列 Perl 转义序列:\L, \l, \N, \P, \p, \U, \u, or \X
提示信息:
![](https://img.haomeiwen.com/i735083/11c2e1773db4f4c9.png)
在 UTF-8 模式下,允许用“\x{...}”,花括号中的内容是表示十六进制数字的字符串。原来的十六进制转义序列 \xhh 如果其值大于 127 的话则匹配了一个双字节 UTF-8 字符。
更换写法
'nickname' => 'required|string|max:10|regex:/^[\x80-\xff_a-zA-Z0-9]+$/',