ThinkPHP5.0.5正则表达式匹配问题

浏览:5121 发布日期:2017/02/15 分类:ThinkPHP5专区
$rule = [
          ['nickname', 'max:20', '用户名最多不能超过20个字符'],
          ['password', 'length:6,20', '密码长度请控制在6-20个字符之间'],
          ['sex', 'regex:[01]', '错误'],
          ['email', 'email', '请填写正确的邮箱格式'],
          ['phone', 'regex:/^1\d{10}$/', '请填写正确的手机格式'],
          ['status', 'regex:/^\-?1|^[02]/', '请填写正确的状态识别码'],
          ['role', 'regex:/^[01]/', '请填写正确的角色识别码'],
        ];
        $validate = new Validate($rule);
        
        $fieldName = $_POST["item"];
        $fieldValue = null;
        
        $data = [
            $_POST['item'] => $_POST['value'],
        ];
        
        
        if (!$validate->check($data)) {
            return $validate->getError();
        }


报错: preg_match(): No ending delimiter '/' found

['status', 'regex:/^\-?1|^[02]/', '请填写正确的状态识别码'],
在这一行中我想用正则表达式匹配 -1 0 1 2, 但是经过测试当加入 | 分支的时候,就会报没有分隔符的错误。请问如何解决
最佳答案
评论( 相关
后面还有条评论,点击查看>>