Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: прошу помощи с регулярным выражением

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: вроде бы должно работать, но не работает
koka
Отправлено: 22 Января, 2011 - 23:32:04
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




Здравствуйте. Надо получить кусочек текста, расположенный на страничке между тегами font

CODE (html):
скопировать код в буфер обмена
  1. <font style="font: 12px Arial; color:#000;">
  2. <p class="MsoNormal"><strong>Дневные ходовые огни, или DRL (Daytime Running Light)</strong> - это
  3. одна из новинок в области автосвета. Ходовые огни предназначены для того, чтобы
  4. сделать ваш автомобиль заметнее, а не для освещения дороги. </p>
  5. <p class="MsoNormal"><strong>Использовать <span lang="EN-US">DRL</span><span lang="EN-US">&nbsp;</span>выгоднее</strong>, чем фары, поскольку луч света от <span lang="EN-US">DRL</span> направлен выше, что делает вас
  6. заметнее, но при этом не ослепляет водителя. Также износ фар при постоянном
  7. использовании куда выше, чем износ <span lang="EN-US">DRL</span> при том же использовании, поскольку они специально предназначены
  8. для постоянной работы.</p>
  9. <p class="MsoNormal">Проще один раз <strong>купить дневные ходовые огни</strong>, чтобы потом
  10. всегда быть заметным на дороге и не платить деньги за дополнительное
  11. обслуживание фар. А в свете последней поправки от 20 ноября 2010 года о езде с
  12. включенным ближним светом или ходовыми огнями – <strong>использование <span lang="EN-US">DRL</span> поможет вам избежать высоких штрафов.</strong></p><span ;="" mso-fareast-font-family:="" times="" new="" roman="" ;mso-ansi-language:ru;mso-fareast-language:="" ru;mso-bidi-language:ar-sa="" style="font-size: 12pt;">&nbsp;</span></font>



Написал такое выражение
PHP:
скопировать код в буфер обмена
  1. preg_match ('/<font style="font: 12px Arial; color:#000;">(^<\/font>)+/i', $code, $header_content);

Вроде должно работать.

Рассуждал так:
1) указал уникальный кусочек текста <font style="font: 12px Arial; color:#000;">
2) идут любые символы до тега </font>
пробовал написать ?+</font> , но так тоже не работает.
Пробовал указать шаблон <font style="font: 12px Arial; color:#000;">?+(?=</font>)
тож не помогло.

?+ означает не менее одного любого символа. Или я что-то путаю???


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
movEAX
Отправлено: 23 Января, 2011 - 09:31:43
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




Улыбка
#<font[^>]*>(.+)</font>#Us


-----
армия.. самое убогое место
 
 Top
koka
Отправлено: 23 Января, 2011 - 09:48:42
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




movEAX, спасибо, что-то я видать подзабыл регулярные выражения, сам себя запутал. Радость Радость Радость

Для себя в итоге написал такое, так как тегов font на странице несколько различных штук
PHP:
скопировать код в буфер обмена
  1. preg_match ('#<font style="font: 12px Arial; color:\#000;">(.+)</font>#Us', $code, $header_content);


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
SAD
Отправлено: 23 Января, 2011 - 09:52:44
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




koka, вы очевидно извращенец)
та регулярка
Цитата:
#<font[^>]*>(.+)</font>#Us
, найдет все, что нужно.
 
 Top
koka
Отправлено: 23 Января, 2011 - 09:57:50
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




SAD, я привёл лишь кусочек кода. На этой странице там куча тегов фонт, можете сами посмотреть http://www[dot]realxenon[dot]ru/modules/shop/cat_14[dot]html
А нажать ctrl+c ctrl+v не сложно Подмигивание
Я посчитал, там целых 17 тегов font!!!

(Отредактировано автором: 23 Января, 2011 - 10:00:29)



-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
JustUserR
Отправлено: 23 Января, 2011 - 11:58:58
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




koka пишет:
Надо получить кусочек текста, расположенный на страничке между тегами font
В качестве возможного варианта решения предполагаемой задачи допустимо исопльзование средств XML-анализатора позволяющег обеспечить извлечение отдельныъ элементов и их параметров из оригинального документа - на основе предоставления явного вложенного пути к целевому элементу или критерия его поиска в XML-документе


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
koka
Отправлено: 23 Января, 2011 - 12:02:06
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




JustUserR пишет:
koka пишет:
Надо получить кусочек текста, расположенный на страничке между тегами font
В качестве возможного варианта решения предполагаемой задачи допустимо исопльзование средств XML-анализатора позволяющег обеспечить извлечение отдельныъ элементов и их параметров из оригинального документа - на основе предоставления явного вложенного пути к целевому элементу или критерия его поиска в XML-документе


JustUserR, а что такое XML анализатор??? Он эффективнее, лучше регулярных выражений??? Если да, то можете дать какую-нибудь ссылку на эту тему?


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
movEAX
Отправлено: 23 Января, 2011 - 12:18:24
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




JustUserR пишет:
В качестве возможного варианта решения предполагаемой задачи допустимо исопльзование средств XML-анализатора позволяющег обеспечить извлечение отдельныъ элементов и их параметров из оригинального документа - на основе предоставления явного вложенного пути к целевому элементу или критерия его поиска в XML-документе

Это с условием валидности контента.


-----
армия.. самое убогое место
 
 Top
koka
Отправлено: 23 Января, 2011 - 12:23:59
Post Id



Гость


Покинул форум
Сообщений всего: 115
Дата рег-ции: Июнь 2010  
Откуда: Россия, Ижевск


Помог: 1 раз(а)




movEAX пишет:
JustUserR пишет:
В качестве возможного варианта решения предполагаемой задачи допустимо исопльзование средств XML-анализатора позволяющег обеспечить извлечение отдельныъ элементов и их параметров из оригинального документа - на основе предоставления явного вложенного пути к целевому элементу или критерия его поиска в XML-документе

Это с условием валидности контента.


А что такое XML-анализатор???

movEAX, то есть этим анализатором не получится распарсить страницу с ошибками в html???


-----
http://rulevoi[dot]net - запчасти для иномарок в Ижевске
 
 Top
movEAX
Отправлено: 23 Января, 2011 - 12:32:34
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 750
Дата рег-ции: Авг. 2009  


Помог: 16 раз(а)




koka пишет:
А что такое XML-анализатор???

SAX, Simple XML, XPath
koka пишет:

movEAX, то есть этим анализатором не получится распарсить страницу с ошибками в html???

Почему же, просто придется сделать его валидным.


-----
армия.. самое убогое место
 
 Top
JustUserR
Отправлено: 23 Января, 2011 - 12:35:50
Post Id



Активный участник


Покинул форум
Сообщений всего: 8715
Дата рег-ции: Июнь 2009  


Помог: 17 раз(а)




koka пишет:
JustUserR, а что такое XML анализатор??? Он эффективнее, лучше регулярных выражений??? Если да, то можете дать какую-нибудь ссылку на эту тему
Использование средств XML-анализатора для решения предполагаемой задачи в действительности является в значительной мере более эффективным решением обеспечиваемого за счет проведения разбора XML-документа в компиированном коде соответствующих модулей
Более подробная информация по данному вопросу предоставлена здесь http://www.php.su/functions/?page=cat_xml


-----
Сделать можно все что угодно - нужно только старание, терпение и хороший поисковик Улыбка
Безлимитный web-хостинг от 15 рублей за 40 МБ дискового пространства - http://ihost[dot]oks71[dot]ru/
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Регулярные выражения »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB