En general: ¿cómo puedo asociar una palabra con las reglas de expresiones regulares para a) el comienzo, b) la palabra completa, yc) el final?.NET regex matching
Más concretamente: ¿Cómo coinciden con una expresión de longitud> = 1 que tiene las siguientes reglas:
- No puede tener cualquiera de:! @ #
- No puede empezar con un espacio o =
- No puede terminar con un espacio
Traté:
^[^\s=][^[email protected]#]*[^\s]$
Pero los ^[^\s=]
se mueve a juego pasado el primer carácter de la palabra . Por lo tanto, esto también coincide con palabras que comienzan con '!' o '@' o '#' (por ejemplo: '#ab' o '@aa'). Esto también fuerza a la palabra a tener al menos 2 caracteres (un carácter inicial que no es espacio o = - y un carácter no espacial al final).
llegué a:
^[^\s=([email protected]#)]\1*$
para una expresión regular coincidir las dos primeras reglas. Pero, ¿cómo no relaciono espacios finales en la palabra con palabras de longitud 1?
+1 Por tener la primera pregunta de expresiones regulares que he visto en semanas que incluye intentos fallidos anteriores. En otras palabras, +1 por ser una pregunta de * real * regex. –