РЕГЭКС: Как заставить включить несколько новых строк в позитивный взгляд? - PullRequest
0 голосов
/ 05 октября 2019

У меня есть текст с несколькими строками между Chapter 1 и Introduction, как я могу включить в мою текущую строку регулярных выражений (?<=Chapter 1[\r\n]Introduction)(.*?)(?=Chapter 2), чтобы включить несколько новых строк, таких как (\n*). Я пытался поставить (\n*) или [\n]*, но это не работает.

Полный текст:

Chapter 1


Introduction

**Lorem Ipsum is simply dummy text**

Chapter 2
Introduction

Lorem Ipsum is simply dummy text

Я пытаюсь получить текст в **

1 Ответ

0 голосов
/ 05 октября 2019

Попробуйте: ^Chapter.*?^Introduction\s+(.+?)(?=^Chapter|$) с обоими вариантами global , multiline и singleline . Первая группа (группы) будет соответствовать всему тексту между Введение и следующей Глава (или концом текста).

Вы можете проверить это здесь:https://regex101.com/r/znNHTv/1

Обновление:

Это даже лучше, так как предыдущий не соответствует многострочному текстовому содержимому.

(?<=^|\n)Chapter.+?Introduction\s+(.+?)(?=Chapter|$)

с глобальными и однострочными опциями. У вас есть и заглядывание назад, и заглядывание вперед, чтобы найти пределы главы.

Проверьте это здесь: https://regex101.com/r/znNHTv/2/ С минимальным улучшением вы можете извлечь номер главы и вводный текст также.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...