Seleccione las últimas 5 palabras de un párrafo en Regex

Seleccione las últimas 5 palabras de un párrafo en Regex

Quiero hacer coincidir las últimas 5 palabras de cada párrafo de un documento. Estoy usando Notepad++ y también Adobe InDesign GREP

Data de muestra

Aquí podrás encontrar actividades para practicar tus habilidades lectoras. La lectura le ayudará a mejorar su comprensión del idioma y desarrollar su vocabulario.

Las lecciones de autoaprendizaje de esta sección están escritas y organizadas por nivel de inglés según el Marco Común Europeo de Referencia para las Lenguas (MCER). Existen diferentes tipos de textos y ejercicios interactivos que practican las habilidades de lectura que necesitas para tener un buen desempeño en tus estudios, salir adelante en el trabajo y comunicarte en inglés en tu tiempo libre.

Realiza nuestro test de inglés online gratuito para saber qué nivel elegir. Selecciona tu nivel, desde el nivel de inglés A1 (elemental) hasta el nivel de inglés C1 (avanzado), y mejora tus habilidades lectoras a tu propio ritmo, cuando te convenga.

He escrito este código que selecciona solo la última palabra. Incluso si cambio de 5 a 3, todavía selecciona solo la última palabra.

(\H*){5}(?=$)

Respuesta1

Primero que nada, expliquemos su expresión regular:

  • (\H*){5}coincide 5 veces con 0 o más espacios no horizontales, coincide con una sola palabra que tiene, al menos, 0 o 5 o más caracteres de longitud.
  • (?=$)no tiene sentido, quieres usarlo $, eso es suficiente.

La expresión regular que debes usar es:(?:\h\H+){5}$

  • (?:\h\H+){5}# 1 espacio horizontal seguido de 1 o más espacios no horizontales, debe aparecer 5 veces
  • $ # fin de la línea

Si no desea hacer coincidir el espacio antes de la primera palabra, use:

(?:\H+\h){4}\H+$

información relacionada