Сцепить регулярные выражения

Do1phin

Client
Регистрация
10.07.2015
Сообщения
16
Благодарностей
0
Баллы
3
Ребята, подскажите пожалуйста, как сцепить несколько регулярных выражений и в полученном результате поставить разделители?

Имеется регулярка:
Код:
((?<=<a\ href="/advertiser_new/campaigns/teasers/id=).*?(?=")|(?<="\ class="c-black">).*?(?=</a>)|(?<=w40p">)[\w\W]*?(?=<br>)|(?<=<span\ class="price">).*?(?=</span>)|(?<=</span>\ руб\.)[\w\W]*?(?=]))
состоящая из нескольких мелких регулярок:

Код:
(?<=<a\ href="/advertiser_new/campaigns/teasers/id=).*?(?=")
(?<="\ class="c-black">).*?(?=</a>)
(?<=w40p">)[\w\W]*?(?=<br>)
(?<=<span\ class="price">).*?(?=</span>)
(?<=</span>\ руб\.)[\w\W]*?(?=])

Выше у меня перечислены регулярки через "|" - ИЛИ. А мне надо как-то перечислить их через И.
Чтобы полученный на выходе результат записывался так:

Код:
результат_регулярки1;результат_регулярки2;результат_регулярки3;результат_регулярки4;результат_регулярки5
 

CSS

Client
Регистрация
22.05.2010
Сообщения
1 327
Благодарностей
663
Баллы
113
Здесь архитектурная ошибка. После парсинга данных каждой регуляркой нужно их сохранять как пожелаете. Лепить всё в одно - текущими кубиками это создаст больше проблем чем профита, так как нет возможности сейчас получать несколько результатов от одного найденного совпадения.

Сделайте 1 шаг = 1 регулярное выражение, в переменную положите результат, далее сохраняйте как вам удобно.
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 885
Баллы
113
Можно данной регуляркой получать все совпадения в список, а далее объеденить элементы списка через ;
 

CSS

Client
Регистрация
22.05.2010
Сообщения
1 327
Благодарностей
663
Баллы
113
Можно данной регуляркой получать все совпадения в список, а далее объеденить элементы списка через ;
Если ТС ищет больше 1-го блока то начинаются проблемы, особенно если в блоке некоторых совпадений не оказывается.

PS: Иногда мне кажется что все одинакового думают, по крайней мере на этом форуме)
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 885
Баллы
113
Если ТС ищет больше 1-го блока то начинаются проблемы, особенно если в блоке некоторых совпадений не оказывается.

PS: Иногда мне кажется что все одинакового думают, по крайней мере на этом форуме)
Да, с таким решением могут быть разные проблемы. Но если ему просто нужно объединить всё, что найдёт эта регулярка, то подойдёт такое решение.
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)