ZebroidФорумПубличный разделВопросы[RSS парсер] помогите с регуляркой

[RSS парсер] помогите с регуляркой

26 июня 2012, 09:32
Зарегистрирован: 20 декабря 2010, 09:09
Добрый вечер!

Помогите составить регулярку, с помощью которой можно было парсить определенный контент сайтов

Например контент состоит из 2ух частей - текста и картинки, находятся в разных блоках. Между ними идет еще 1 блок - например видеплеер:

<div style="text">текст</div>

<div>плеер</div>

<div style="img">картинка</div>


Как спарсить блоки текста и картинки, а все что между ними удалить?



26 июня 2012, 10:12
Зарегистрирован: 10 апреля 2012, 00:00
РСС не парсит несколькими блоками. Вам необходимо получать весь текст, а удалять лишнее уже с помощью поиска и замены после



27 июня 2012, 23:58
Зарегистрирован: 07 февраля 2012, 07:55
Чтобы не открывать новую тему задам вопрос тут:

Где можно узнать как именно работают регулярные выражения при парсинге полной новости RSS?

Эксперименты не помогают, - еще больше запутывают.



28 июня 2012, 05:09
Зарегистрирован: 10 апреля 2012, 00:00
В каком смысле как работают регулярки? Регулярки работаю так же, как и поиске и замене и других инструментах. Единственное, что необходимо знать при использовании регулярок в РСС - это нельзя использовать захватываемые группы.



28 июня 2012, 22:20
Зарегистрирован: 07 февраля 2012, 07:55
То есть, регулярное выражение не может быть составлено таким образом:

(?<=<div\ id="showcase"\ class="dp100">)([\w\W]*)(?=</div>)

Чтобы выдернуть оттуда $2.

Жаль.



29 июня 2012, 10:19
Зарегистрирован: 10 апреля 2012, 00:00
Не верно. Если регулярка правильная, тогда эту часть необходимо записать в до:

(?<=<div\ id="showcase"\ class="dp100">)

А эту в после:

(?=</div>)



09 августа 2014, 23:29
Зарегистрирован: 29 марта 2010, 21:44
А как такое решить, пробывал разными способами, но что не получается

<span id="more-465456">
Контент
<div class="clear">

т.е. id={всегда разные значения}

делаю так
от (?<=<span\ id="more-(\d+?)">)
до (?=<div\ class="clear">)

но в итоге ничего не спарсивает

11 августа 2014, 09:24
Зарегистрирован: 10 апреля 2012, 00:00
Для помощи с регулярками на форуме существует специальный раздел. В вашем случае можно обойтись и шаблоном без использования регулярок:

От: <span id="more-*">
До: <div class="clear">


11 августа 2014, 21:12
Зарегистрирован: 29 марта 2010, 21:44
Спасибо, все просто.
надо на форум добавить кнопку спасибо, а то как то не красиво получается.