[ID CC2018] Как выделить часть однотипного текста?

Geracl

Участник
Топикстартер
Сообщения
4
Оценка реакций
1
Доброго времени суток!
Столкнулся с вопросом, попытался сам решить, прошерстил форум, ответ не нашел. Обращаюсь к акулам GREPa!

Есть текст с однотипными элементами:
ФИО+биография+слово "Литература"+список литературы+перевод строки+ФИО... и т.д.

Необходимо список литературы отдельно выделить и присвоить ему стиль. Как это сделать? Спасибо!
 

Вложения

LeonidB

Сантимэтр гурам на смех
Сообщения
2 392
Оценка реакций
1 472
Найти:
Код:
(?<=Лiтература:\r)\X+(?=\r\r)
 
Последнее редактирование:

LeonidB

Сантимэтр гурам на смех
Сообщения
2 392
Оценка реакций
1 472
Что такое \X ? Нигде не нашел информации по этому оператору.
См. это.
X.jpg
Если у Вас не работает \X, попробуйте заменить его на одну из трёх альтернативных комбинаций, приведённых на этом скрине.

Этот запрос не дает никакого результата.
Запрос даёт результат. Правда, надо его чуть сузить: после \X+ поставить ? - а то немного лишнего берёт. Но всё равно берёт :)

Код:
(?<=Лiтература:\r)\X+?(?=\r\r)
1.jpg 2.jpg 3.jpg
 
Последнее редактирование:

LeonidB

Сантимэтр гурам на смех
Сообщения
2 392
Оценка реакций
1 472

LeonidB

Сантимэтр гурам на смех
Сообщения
2 392
Оценка реакций
1 472
Кстати, товарищ так и не рассказал, получилось у него или нет.
 

andrejK

12 лет на форуме
Сообщения
10 097
Оценка реакций
5 133
А он точно тебе товарищ?
 

Geracl

Участник
Топикстартер
Сообщения
4
Оценка реакций
1
Доброй ночи. Вернулся опять к тексту. Вот в чем дело было... Скопировал заново ваш пример
Код:
(?<=Література:\r)\X+?(?=\r\r)
не работает, тогда я вписал вручную слово "Література" - и заработало!
Так же работают аналоги оператора "Любой символ":
Код:
(?<=Література:\r)\p{any}+?(?=\r\r)
(?<=Література:\r)\p{assigned}+?(?=\r\r)
(?<=Література:\r)[\d\D]+?(?=\r\r)
Благодарю!
 

Geracl

Участник
Топикстартер
Сообщения
4
Оценка реакций
1
За это время своими усилиями соорудил такую конструкцию. Объясню ее, возможно будет полезной для других:
Найти:
Код:
(?<=Література:\r)(.+\r)+
Где:
Положительный просмотр назад:
(?<=)
будет искаться текст, что идет только после "Література:" перевод строки:
(?<=Література:\r)
Дальше любой символ:
.
повторяется один или несколько раз:
+
перевод строки:
\r
это все, взятое в скобки, повторяется один или несколько раз
+
это все, вместе взятое, будет поиском любого абзаца или абзацев.