php - update - Laravel 5.4-Validación con Regex
laravel validation unique update (1)
Su regla está bien hecha, PERO lo que necesita saber, especificar reglas de validación con expresiones regulares separadas por canalización puede conducir a un comportamiento no deseado.
La forma correcta de definir una regla de validación debe ser:
$this->validate(request(), [
''projectName'' =>
array(
''required'',
''regex:/(^([a-zA-Z]+)(/d+)?$)/u''
)
];
Puedes leer en los documentos oficiales :
expresiones regulares: patrón
El campo bajo validación debe coincidir con la expresión regular dada.
Nota: al usar los patrones regex / not_regex, puede ser necesario especificar reglas en una matriz en lugar de usar delimitadores de tuberías , especialmente si la expresión regular contiene un carácter de tubería.
Esta pregunta ya tiene una respuesta aquí:
A continuación está mi regla para el nombre del proyecto:
$this->validate(request(), [
''projectName'' => ''required|regex:/(^([a-zA-z]+)(/d+)?$)/u'',
];
Estoy tratando de agregar la regla de manera que debe comenzar con una letra de az
o Az
y puede terminar con números, pero la mayoría no.
Valores válidos para el nombre del proyecto:
myproject123
myproject
MyProject
Valores no válidos para el nombre del proyecto:
123myproject
!myproject
myproject 123
my project
my project123
Probé mi expresión regular en línea:
https://regex101.com/r/FylFY1/2
Debería funcionar, pero puedo pasar la validación incluso con el project 123
.
ACTUALIZACIÓN : Realmente funciona, lo probé en el controlador incorrecto, lo siento ... pero tal vez ayude a otros a pesar de todo