为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel 后端验证 preg_match(): 未知修饰符 '?' 使用正则表达式

Laravel 后端验证 preg_match(): 未知修饰符 '?' 使用正则表达式

PHP
犯罪嫌疑人X 2022-11-04 17:11:49
如果我只是测试它的正则表达式,我有以下正(\bcherry\b)?(\bbanana\b)?/gi则表达式,但是当我将它应用于我在 Laravel 中的后端验证时,我得到一个preg_match(): Unknown modifier '?'错误。   public function rules()   {       return [         'selection' => ['required', 'regex:(\bcherry\b)?(\bbanana\b)?/gi']       ];   }我已经尝试逃避'?有一个 \ 但后来我得到一个preg_match(): Unknown modifier '\'错误如何编写一个正则表达式来检查 Laravel 中的输入是“樱桃”还是“香蕉”?
查看完整描述

1 回答

?
慕姐4208626

TA贡献1852条经验 获得超7个赞

看起来好像您正在尝试匹配 abanana或cherry.


笔记:


PHP 正则表达式函数不支持g标志

您需要前导和尾随正则表达式分隔符。

利用


public function rules()

   {

       return [

         'selection' => ['required', 'regex:/\b(?:cherry|banana)\b/i']

       ];

   }


查看完整回答
反对 回复 2022-11-04
  • 1 回答
  • 0 关注
  • 125 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信