Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

189
Vistas
¿Por qué no funciona la siguiente validación de patrón?
@Pattern(regexp = "^[a-zA-Z0-9_-]*$", message = "Only alpha-numeric characters are allowed") private String recipientId;

Quiero permitir solo caracteres alfanuméricos, pero la validación anterior no funciona como esperaba. Permite el paso de una solicitud que tenga un signo más (+)

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Cuando se usan corchetes, el guión es un carácter especial para definir el rango , por lo que debe escaparse si desea que coincida con "-".

La expresión regular debería verse como

 [a-zA-Z0-9_\\-]*

Nota: después de la prueba, parece que puede usar guiones sin escapar cuando usa corchetes.

Preferiría así (\\w|-)*

\w Un carácter de palabra: [a-zA-Z_0-9]


Tal vez el problema no esté en la expresión regular, sino en la forma en que se usa la anotación de validación. Puede usar la anotación en el campo directamente o en el captador, pero no en ambos. ¿Está seguro de que siempre sigue el mismo patrón de codificación para todas las anotaciones?

Finalmente, ¿usa la anotación @Valid para validar realmente su entrada?

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda