dandandan
Мой дом здесь!
- Регистрация
- 7 Авг 2008
- Сообщения
- 1.036
- Реакции
- 293
- Автор темы
- #1
Ломаю голову 2ой день. Помогите "доломать". Есть текстовый файл с перечислениями.
Нужно регуляркой получить 2 блока (выделены жирно). В дальнейшем найденные блоки будут обернуты в тег <UL> (для этого и нужно найти).
Блоков может быть больше, количество перечислений произвольное. Каждое перечисление начинается с новой строки с открывающейся фигурной скобки {li} далее идет произвольный текст на один абзац.
В итоге добрался до такого варианта, но бесполезно:
(?=^[^{][^o][^l][^l][^i][^}]) - Позитивный просмотр вперёд
Другой вариант - выбираю одно перечисление и указываю, что их может быть больше одного
Текст текст тест. Не должен попасть в выборку
{li} вариант 1 Блок 1
{li} вариант 2 Блок 1
{li} вариант 3 Блок 1
Текст текст тест. Не должен попасть в выборку
Текст текст тест. Не должен попасть в выборку
{li} вариант 6 Блок 2
{li} вариант 7 Блок 2
Текст текст тест. Не должен попасть в выборку
Текст текст тест. Не должен попасть в выборку
Нужно регуляркой получить 2 блока (выделены жирно). В дальнейшем найденные блоки будут обернуты в тег <UL> (для этого и нужно найти).
Блоков может быть больше, количество перечислений произвольное. Каждое перечисление начинается с новой строки с открывающейся фигурной скобки {li} далее идет произвольный текст на один абзац.
В итоге добрался до такого варианта, но бесполезно:
(^\{olli\}[^\^]*?) - поиск строки из одного перечисления.(^\{olli\}[^\^]*?)(?=^[^{][^o][^l][^l][^i][^}])
(?=^[^{][^o][^l][^l][^i][^}]) - Позитивный просмотр вперёд
Другой вариант - выбираю одно перечисление и указываю, что их может быть больше одного
Тоже не работает.(^\{olli\}.*?$)+