我的Laravel规则和正则表达式操作有一个小问题:
基本上规则就是这样一个数组:
'room'=>'required|alpha_num|min:2|max:10',
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是使用正则表达式和| (或)运营商,例如:
'cid'=>'required|regex:/^((comp)|(soen)|(engr)|(elec))\d{3}$/i',
Run Code Online (Sandbox Code Playgroud)
我收到服务器错误说:
ErrorException
preg_match(): No ending delimiter '/' found
Run Code Online (Sandbox Code Playgroud)
我猜这preg_match是在第一个|内部停止/.../.
反正有没有写上面的代码使它工作?
完整代码:
public static $rules = array(
'cid' => array('required', 'regex:/^((comp)|(soen)|(engr)|(elec))\d{3}$/i'),
'description'=>'required|regex:/^[A-Za-z \t]*$/i|min:3|unique:courses',
'credits'=>'required|regex:/^\d+(\.\d)?$/'
);
Run Code Online (Sandbox Code Playgroud)