Estoy buscando una expresión regular para que coincida con un par de líneas sobre la línea coincidente. Por ejemplo:
ABCDEFGHADEFGH
ABCDEFGHADEFGH
ABCDEFGHDEFGHABCDEFGH
ABCDEFGHDEFGHABCDEFGH
ABCDEFGHABCDEFGHABCDEFGH
ABCDEFGHABCDEFGHABCDEFGH
XXXXXXXX
Me gustaría capturar las 2 líneas sobre XXXXXXXX.
Cualquier ayuda sería apreciada. Nota: con Python usando la biblioteca re

Respuestas:
El siguiente RegEx prueba una cantidad variable de líneas antes de la
XXXXXXXXlínea y las devuelve en el primer grupo de captura.((.*\n){2})XXXXXXXX(.*\n)prueba una cadena que termina con\n, una nueva línea.{2}cuantifica esto 2 veces.()eso asegura que todas las líneas vengan en un solo grupo de captura.XXXXXXXXes la cadena con la que el texto tiene que terminar.Ahora en Python, puede usar
p.match(regex)[0]para devolver el primer grupo de captura.fuente
\r\nlugar de solo\n.XXXXXXXX(pero no necesariamente termina conXXXXXXXX).Agregando a la respuesta de erikgaal, use un extra. * Antes de xxxxxx, para que coincida con las pestañas / espacios en blanco.
((. * \ n) {2}). * xxxxxxx
fuente
.*no coincidirá solo con pestañas / espacios; coincidirá con cualquier cosa (p. ej., "The quick brown XXXXXXX").