Soy bastante decente con las expresiones regulares, pero hay una situación que siempre me preocupa, y es: dar una coincidencia cuando no existe un patrón en una cadena de búsqueda.
Aquí hay un poco de información de fondo:
Utilizo un programa llamado Actual Tools Window Manager, que permite crear reglas basadas en ventanas individuales. Puedo especificar el título de Windows como una cadena exacta o usar una expresión regular para hacer coincidir.
Mi objetivo es hacer que esta regla se active en cualquier ventana que tenga un título que no incluya una cadena específica. La expresión regular es solo un patrón, similar a la función php: preg_match.
No puedo trabajar con grupos de captura y referirme a un grupo de captura (al menos, no logré que eso funcionara).
Como ejemplo, digamos que quiero hacer una regla que se active en todo excepto cuando cmd.exe está en el título.
Abro una línea de comandos para que sea probable que el título tenga: C:\Windows\System32\cmd.exe
Quiero que esta ventana se excluya de mi regla basada en la presencia de cmd.exe
Probé cosas como ^cmd.exe
pero eso simplemente no funciona.
Herramientas reales utiliza una biblioteca de expresiones regulares compatibles con Perl, por lo que http://www.pcre.org/ todo debería ser posible de alguna manera
¿Cómo puedo hacer una expresión regular que coincida con OK si una determinada cadena no está presente, pero FAIL si esa cadena está presente?