validar solo regulares regular que para palabra numeros nombres mayores letras expresiones expresion exacta especiales espacios espacio direccion casa caracteres blanco apellidos alfanumerico .net regex

.net - regulares - expresion regular solo numeros mayores que 0



Expresión regular para validar cadena hexadecimal (4)

Estoy usando esta expresión regular simple para validar una cadena hexagonal:

^[A-Fa-f0-9]{16}$

Como puede ver, estoy usando un cuantificador para validar que la cadena tiene 16 caracteres. Me preguntaba si puedo usar otro cuantificador en la misma expresión regular para validar que la longitud de la cuerda sea 16 o 18 (no 17).


Eso es solo un requisito de 16 caracteres con un 2 carácter opcional después:

^[A-Fa-f0-9]{16}([A-Fa-f0-9]{2})?$

Es posible que no se requiera el paréntesis: me temo que no soy suficiente gurú regex para saberlo. Si alguien quiere editarlo, siéntete libre ...


^(?:[A-Fa-f0-9]{16}|[A-Fa-f0-9]{18})$


Creo

^([A-Fa-f0-9]{2}){8,9}$

trabajará.

Esto es bueno porque se generaliza a cualquier cadena de igual longitud.


Probablemente vaya con

/^[a-f0-9]{16}([a-f0-9]{2})?$/i

mí mismo. Creo que es más legible configurar las expresiones regulares como insensibles a mayúsculas y solo mostrar el rango de caracteres una vez. Dicho esto, casi todas estas respuestas funcionan.