Tengo un campo de entrada que no debe estar en blanco y no debe permitir caracteres especiales.
Tengo algo como esto para la validación:
if (value === '' || !value.trim()) { this.invalidNameFeedback = 'This field can not be blank.'; return false; } else if (!value.match(/[\p{Letter}\p{Mark}]+/gu)) { this.invalidNameFeedback = 'This field can not contain special characters.'; return false; }Esto permite caracteres especiales cuando se ingresan con letras o números. No quiero permitir caracteres especiales en absoluto.
Puede verificar el valor completo para que solo coincida con una clase de carácter seleccionada y usar, por ejemplo .test()
^[\p{Alphabetic}\p{Mark}\p{Decimal_Number}\p{Connector_Punctuation}\p{Join_Control}]+$Ver las coincidencias de expresiones regulares .
Ejemplo
if (value === '' || !value.trim()) { this.invalidNameFeedback = 'This field can not be blank.'; return false; } else if (!/^[\p{Alphabetic}\p{Mark}\p{Decimal_Number}\p{Connector_Punctuation}\p{Join_Control}]+$/u.test(value)) { this.invalidNameFeedback = 'This field can not contain special characters.'; return false; }