Я работаю над Laravel 4.2. Я пытаюсь использовать Validator для проверки поля имени с регулярным выражением, вот мое правило ниже:
public static $rules_save = [ 'class_subjects' => 'required|regex:/[0-9]([0-9]|-(?!-))+/' ];
Но как только я вызываю правило, подлежащее проверке, возникает ошибка: см. Ниже:
preg_match(): No ending delimiter '/' found
Поскольку в вашем регулярном выражении есть труба, вам нужно использовать массив:
public static $rules_save = [ 'class_subjects' => ['required', 'regex:/[0-9]([0-9]|-(?!-))+/'], ];
Из документов :
При использовании шаблона
regex
может потребоваться указать правила в массиве вместо использования ограничителей каналов, особенно если регулярное выражение содержит символ канала.