Возможно ли в laravel валидации поймать значение input’a и вставить в сообщение о ошибке?

Да, в Laravel возможно поймать значение input и вставить его в сообщение об ошибке при валидации. Для этого вам нужно использовать правило валидации regex:pattern, где pattern - это регулярное выражение, которое определяет, какое значение должно быть введено в поле.

Важно отметить, что если вы хотите использовать значение поля input в пользовательском сообщении об ошибке, нужно создать новую переводимую строку в файле resources/lang/{язык}/validation.php. Например, чтобы создать кастомное сообщение об ошибке для поля email, вы должны добавить следующую строку в файле resources/lang/{язык}/validation.php:

'custom' => [
    'email' => [
        'regex' => 'Поле :attribute должно быть в формате :format.',
    ],
],

В данном случае :attribute будет заменено на название поля, а :format будет заменено на ожидаемый формат значения. Таким образом, вы можете передать в кастомное сообщение всю необходимую информацию для пользователя.

Затем, в правиле валидации в вашем контроллере, вы можете указать правило regex и указать нужный шаблон:

public function store(Request $request)
{
    $validatedData = $request->validate([
        'email' => 'required|email|regex:/^(foo|bar)$/i',
    ]);

    // остальной код
}

В этом примере, мы добавили правило regex:/^(foo|bar)$/i, что означает, что поле email должно иметь значение "foo" или "bar". Если введенное значение не соответствует этому шаблону, будет сгенерировано сообщение об ошибке, которое будет содержать переданное в поле значение.

Это позволяет создавать более информативные сообщения об ошибках для конечных пользователей в Laravel при помощи персонализированных правил валидации и кастомных сообщений об ошибках.