Digamos que tengo un búfer con texto. Me gustaría probar una expresión regular (idealmente tipo Perl) contra mi búfer y hacer que Emacs resalte las coincidencias en él.
Por ejemplo, la siguiente expresión regular ( tomada de Wikipedia ):
(?<=\.) {2,}(?=[A-Z])
coincidiría como sigue en el siguiente texto:
Esta expresión regular en particular coincide con al menos dos espacios que ocurren después del punto (.)
y antes de una letra mayúscula.
¿Emacs proporciona un emparejador interactivo de expresiones regulares para las expresiones regulares de Perl ?
Si la respuesta a esto último es no:
¿Hay alguna razón por la cual el soporte nativo de las expresiones regulares de Perl no fue (nunca) considerado en Emacs? (considerando que es un estándar bien conocido en Unix / Linux)
¿Cómo se puede proceder sobre la construcción de uno de estos Regexp Matcher Perl? (¿tal vez llamar a Perl bajo el capó, o convertir previamente la expresión regular de Perl a una variante compatible?)
fuente
Respuestas:
Hay dos paquetes agradables para trabajar con expresiones regulares de tipo perl de manera efectiva, que deben usarse juntos: visual-regexp y su extensión, visual-regexp-esteroides . Son una gran adición a emacs:
fuente
re-builder
permite sobre la marcha la construcción de expresiones regulares de estilo lisma de emacs. No sé si hay un paquete equivalente para construir expresiones regulares de Perl de forma interactiva.Ver http://www.masteringemacs.org/articles/2011/04/12/re-builder-interactive-regexp-builder/ para más discusión.
fuente