Я работаю над 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
шаблон, может потребоваться указать правила в массиве вместо использования разделителей канала, особенно если регулярное выражение содержит символ канала.
Других решений пока нет …