Модераторы: ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> надо выдрать два места из страницы, надо выдрать два места из страницы 
:(
    Опции темы
совсемначинающий
Дата 25.6.2010, 12:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 25.6.2010

Репутация: нет
Всего: нет



скачиваю страничку и надо выдрать два места из нее по шаблону

...........
<div style="line-height: 160%; margin-bottom: 7px;">
НУЖНЫЙ КУСОК 1
</div>
НЕНУЖНЫЙ ТЕКСТ
<div style="margin-left: 4px;">
НУЖНЫЙ КУСОК 2
</div>
............


$description = `/usr/bin/wget -q -O - $urls{$i}`;
$description =~ /<div style="line-height: 160%; margin-bottom: 7px;">(.*?)<\/div>(.*?)<div style="margin-left: 4px;">(.*?)<\/div>/;
$description = $1.<br>.$3;


выдает пустоту как ни изгаляюсь...

PM MAIL   Вверх
ginnie
Дата 25.6.2010, 13:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 6.1.2008
Где: Москва

Репутация: 1
Всего: 49



совсемначинающий, пропробуйте использовать два регулярных выражения, вместо одного (отдельный для каждого нужного фрагмента) и добавить в регулярное выражение модификатор s, чтобы . переводы строк тоже захватывала.


--------------------
Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг)
PM MAIL Skype Jabber   Вверх
совсемначинающий
Дата 25.6.2010, 14:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 25.6.2010

Репутация: нет
Всего: нет



а как правильно работать с кавычками?...  похоже из-за них дело...
PM MAIL   Вверх
ginnie
Дата 25.6.2010, 14:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 6.1.2008
Где: Москва

Репутация: 1
Всего: 49



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


--------------------
Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг)
PM MAIL Skype Jabber   Вверх
совсемначинающий
Дата 25.6.2010, 15:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 25.6.2010

Репутация: нет
Всего: нет



так выкусывает с начала 7px до </div>

$description =~ /7px;(.*?)<\/div>/s;
$description = $1;


так выдает пустоту

$description =~ /7px;\"(.*?)<\/div>/s;
$description = $1;

или 

$description =~ /7px;"(.*?)<\/div>/s;
$description = $1;



текст скачиваемый


<div style="line-height:60%;margin-top:7px;margin-bottom:7px">

полезный текст

</div>
  
 <div style="margin-left:4px;">Дополнительная информация: <font class="dop">нет</font></div>

полезный текст 2
 
</div></p>



PM MAIL   Вверх
ginnie
Дата 25.6.2010, 15:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 6.1.2008
Где: Москва

Репутация: 1
Всего: 49



совсемначинающий, ткните пальцем, где у Вас в тексте есть 7px;"?


--------------------
Написать код, понятный компьютеру, может каждый, но только хорошие программисты пишут код, понятный людям. (Мартин Фаулер. Рефакторинг)
PM MAIL Skype Jabber   Вверх
совсемначинающий
Дата 25.6.2010, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 25.6.2010

Репутация: нет
Всего: нет



мда... спасибо огромное
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Регулярные выражения | Следующая тема »


 




[ Время генерации скрипта: 0.0437 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.