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?

 PHP.SU

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


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

> Без описания
event
Отправлено: 07 Февраля, 2016 - 18:05:28
Post Id


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


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


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




Почему не работает регулярка? В чем проблема?

PHP:
скопировать код в буфер обмена
  1.  
  2. $text = '<tr id="site_row_0" class="siteRow table_content_rows2" valign="middle" height="60px">
  3.                 <td nowrap="" align="left" class="pl10">site.com&nbsp;
  4. <div class="url-with-catalogs">
  5.                
  6.                
  7.                 <div class="in-white-list hidden" onmouseover="return overlib(                  'Этот сайт присутствует в вашем белом списке', CAPTION,
  8.                                 'Избранный сайт');" onmouseout="return nd();"></div>
  9.                                                         <div class="gogetlinks-trust-medal-silver" onmouseover="return overlib('Траст площадки составляет 6 баллов из 10. Рекомендуется размещение на этом сайте. Траст рассчитывается на основе анализа входящих и исходящих ссылок, индексации, тИЦ, трафика и ряда других показателей. Он является объективным показателем эффективности сайта с точки зрения SEO.', CAPTION,  'Площадка с хорошим трастом GGL');" onmouseout="return nd();"></div>
  10.                                         <div class="touch_info" style="display:none;" onclick="showSiteInfoViaHelpIcon(this)"></div>
  11. </div><br>
  12.                         <a class="fontSize10" rel="facebox" href="https://www.gogetlinks.net/template/edit_site_info.php?site_id=5505" style="border-bottom-style: none; border-bottom-width: 0px;"><label class="isdashed">Настройки</label><img class="icoSettingsSite imgMini text_ico isBtn" id="5505" src="./Параметры_сайтов_files/options.png" alt="Настройки"></a></td>
  13.                 <td align="center">
  14.                         <a rel="facebox" style="border-bottom-style: none; border-bottom-width: 0px;" href="https://www.gogetlinks.net/template/edit_site_info.php?action=showEditVisibility&site_id=5505"><img src="./Параметры_сайтов_files/ico_not_view_url.jpg"><br><span class=" small isdashed">URL скрыт</span></a>                                      </td>
  15.                 <td align="center"><span class="my-sites-field-tic" onclick="startRefreshParameters(this, '5505', '2915');">40</span><span class="refresh-info-span hidden" style="font-size: 11px;"><br>Проверка...</span></td>
  16.                 <td align="center"><label>774</label></td>
  17.                 <td></td>
  18.                 <td align="center"><font style="color:green;" onmouseover="return overlib('100% страниц, на которых размещены обзоры в рамках Gogetlinks, были проиндексированы Яндексом.', CAPTION, 'Индексация (%)');" onmouseout="return nd();">100%</font> <img class="text_ico" src="./Параметры_сайтов_files/vopros_mini.gif" onmouseover="return overlib('<div id="overDivChild">'+returnOverLib(5505)+'</div>', CAPTION, 'Индексация (%)');" onmouseout="return nd();"></td>
  19.                 <td align="center"><span style="cursor: pointer; color: #285480; border-bottom: 1px dashed;" onclick="startRefreshBackreferencing(this, '5505');">2%</span><span class="refresh-info-span hidden" style="font-size: 11px;"><br>Проверка...</span> <img style="margin-bottom:-5px;" src="./Параметры_сайтов_files/vopros_mini.gif" onmouseover="return overlib('<p>Ссылочность - это отношение всех исходящих ссылок (на уникальные домены) на сайте к количеству страниц в индексе Яндекса. При этом количество проиндексированных страниц умножается на поправочный коэффициент 1.8. Чем ниже показатель ссылочности, тем более интересной является площадка для оптимизаторов, и тем больше заказов вы будете получать.</p><p></p><div><b>Текущий показатель</b>: 2%</div><div><b>Ссылок (по Ahrefs):</b> 1466 (проверка 1 раз в месяц)</div><div><b>Страниц в индексе Яндекса</b>: 69984 (проверка индексации 1 раз в месяц)</div><p/><div><b>До 10%</b> - отличный показатель</div><div><b>От 11% до 29%</b> - хороший показатель</div><div><b>От 30% до 49%</b> - средний показатель</div><div><b>От 50% до 89%</b> - плохой показатель</div><div><b>От 90%</b> - очень плохой показатель, сайт становится невидимым до снижения ссылочности.</div>', CAPTION, 'Ссылочность (%)', WIDTH, 500);" onmouseout="return nd();"></td>
  20.                 <td align="center"><font class="green">1.3 дней.</font></td>
  21.                 <td align="center"><span class="green" onmouseover="return overlib('Ниже представлены индивидуальные рекомендации по повышению траста для сайта         <ul style="padding-left: 25px;">                <li>Нарастить тИЦ сайта</li>    </ul>   ', CAPTION, 'Траст 6 баллов из 10')" onmouseout="return nd();">6</span></td>
  22.                 <td align="center"><label>94</label>&nbsp;<span class="very-small">(до 20 февраля)</span><div><a class="small" rel="facebox" href="https://www.gogetlinks.net/template/autosend_request.php?ref=1">Авторассылка вкл.</a></div></td>
  23.                 <td align="center"><a href="https://www.gogetlinks.net/web_task.php?in_site_id=5505" onclick="document.cookie=\'select_menu=2\'; document.cookie=\'selected_submenu=2\'">0</a></td>
  24.                 <td align="center"><a href="https://www.gogetlinks.net/web_task.php?action=view_paid&in_site_id=5505" onclick="document.cookie=\'select_menu=2\'; document.cookie=\'selected_submenu=2\'">1 326</a></td>
  25.                                 <td align="center" class="finance_no_ico"><a href="https://www.gogetlinks.net/finance.php?for_sites=5505" onclick="document.cookie=\'selected_submenu=0\';">111 491 руб.</a></td>
  26.                                 <td id="row_col_5505">
  27.                                 <div class="navigator" align="right">
  28.                                         <div class="link_up" id="5505"><img src="./Параметры_сайтов_files/black_up.gif" title="Передвинуть вверх" alt="up" style="cursor:pointer;padding-bottom:5px;" onclick="change_position(5505,'up');"></div>
  29.                                         <div class="link_down" id="5505"><img src="./Параметры_сайтов_files/black_down.gif" title="Передвинуть вниз" alt="down" style="cursor:pointer;padding-top:5px;" onclick="change_position(5505,'down')"></div>
  30.                                 </div></td>
  31.         </tr>';
  32.        
  33.  
  34. preg_match_all('~<tr id="site_row_0" class="siteRow table_content_rows2" valign="middle" height="60px">
  35.                 <td nowrap="" align="left" class="pl10">(.*?)&nbsp;
  36. <div class="url-with-catalogs">
  37.                
  38.                
  39.                 <div class="in-white-list hidden" onmouseover="return overlib(                  'Этот сайт присутствует в вашем белом списке', CAPTION,
  40.                                 'Избранный сайт');" onmouseout="return nd();"></div>
  41.                                                         <div class="gogetlinks-trust-medal-silver" onmouseover="return overlib('Траст площадки составляет 6 баллов из 10. Рекомендуется размещение на этом сайте. Траст рассчитывается на основе анализа входящих и исходящих ссылок, индексации, тИЦ, трафика и ряда других показателей. Он является объективным показателем эффективности сайта с точки зрения SEO.', CAPTION,  'Площадка с хорошим трастом GGL');" onmouseout="return nd();"></div>
  42.                                         <div class="touch_info" style="display:none;" onclick="showSiteInfoViaHelpIcon(this)"></div>
  43. </div><br>
  44.                         <a class="fontSize10" rel="facebox" href="https://www.gogetlinks.net/template/edit_site_info.php?site_id=5505" style="border-bottom-style: none; border-bottom-width: 0px;"><label class="isdashed">Настройки</label><img class="icoSettingsSite imgMini text_ico isBtn" id="5505" src="./Параметры_сайтов_files/options.png" alt="Настройки"></a></td>
  45.                 <td align="center">
  46.                         <a rel="facebox" style="border-bottom-style: none; border-bottom-width: 0px;" href="https://www.gogetlinks.net/template/edit_site_info.php?action=showEditVisibility&site_id=5505"><img src="./Параметры_сайтов_files/ico_not_view_url.jpg"><br><span class=" small isdashed">URL скрыт</span></a>                                      </td>
  47.                 <td align="center"><span class="my-sites-field-tic" onclick="startRefreshParameters(this, '5505', '2915');">40</span><span class="refresh-info-span hidden" style="font-size: 11px;"><br>Проверка...</span></td>
  48.                 <td align="center"><label>774</label></td>
  49.                 <td></td>
  50.                 <td align="center"><font style="color:green;" onmouseover="return overlib('100% страниц, на которых размещены обзоры в рамках Gogetlinks, были проиндексированы Яндексом.', CAPTION, 'Индексация (%)');" onmouseout="return nd();">100%</font> <img class="text_ico" src="./Параметры_сайтов_files/vopros_mini.gif" onmouseover="return overlib('<div id="overDivChild">'+returnOverLib(5505)+'</div>', CAPTION, 'Индексация (%)');" onmouseout="return nd();"></td>
  51.                 <td align="center"><span style="cursor: pointer; color: #285480; border-bottom: 1px dashed;" onclick="startRefreshBackreferencing(this, '5505');">2%</span><span class="refresh-info-span hidden" style="font-size: 11px;"><br>Проверка...</span> <img style="margin-bottom:-5px;" src="./Параметры_сайтов_files/vopros_mini.gif" onmouseover="return overlib('<p>Ссылочность - это отношение всех исходящих ссылок (на уникальные домены) на сайте к количеству страниц в индексе Яндекса. При этом количество проиндексированных страниц умножается на поправочный коэффициент 1.8. Чем ниже показатель ссылочности, тем более интересной является площадка для оптимизаторов, и тем больше заказов вы будете получать.</p><p></p><div><b>Текущий показатель</b>: 2%</div><div><b>Ссылок (по Ahrefs):</b> 1466 (проверка 1 раз в месяц)</div><div><b>Страниц в индексе Яндекса</b>: 69984 (проверка индексации 1 раз в месяц)</div><p/><div><b>До 10%</b> - отличный показатель</div><div><b>От 11% до 29%</b> - хороший показатель</div><div><b>От 30% до 49%</b> - средний показатель</div><div><b>От 50% до 89%</b> - плохой показатель</div><div><b>От 90%</b> - очень плохой показатель, сайт становится невидимым до снижения ссылочности.</div>', CAPTION, 'Ссылочность (%)', WIDTH, 500);" onmouseout="return nd();"></td>
  52.                 <td align="center"><font class="green">1.3 дней.</font></td>
  53.                 <td align="center"><span class="green" onmouseover="return overlib('Ниже представлены индивидуальные рекомендации по повышению траста для сайта         <ul style="padding-left: 25px;">                <li>Нарастить тИЦ сайта</li>    </ul>   ', CAPTION, 'Траст 6 баллов из 10')" onmouseout="return nd();">6</span></td>
  54.                 <td align="center"><label>94</label>&nbsp;<span class="very-small">(до 20 февраля)</span><div><a class="small" rel="facebox" href="https://www.gogetlinks.net/template/autosend_request.php?ref=1">Авторассылка вкл.</a></div></td>
  55.                 <td align="center"><a href="https://www.gogetlinks.net/web_task.php?in_site_id=5505" onclick="document.cookie=\'select_menu=2\'; document.cookie=\'selected_submenu=2\'">0</a></td>
  56.                 <td align="center"><a href="https://www.gogetlinks.net/web_task.php?action=view_paid&in_site_id=5505" onclick="document.cookie=\'select_menu=2\'; document.cookie=\'selected_submenu=2\'">1 326</a></td>
  57.                                 <td align="center" class="finance_no_ico"><a href="https://www.gogetlinks.net/finance.php?for_sites=5505" onclick="document.cookie=\'selected_submenu=0\';">111 491 руб.</a></td>
  58.                                 <td id="row_col_5505">
  59.                                 <div class="navigator" align="right">
  60.                                         <div class="link_up" id="5505"><img src="./Параметры_сайтов_files/black_up.gif" title="Передвинуть вверх" alt="up" style="cursor:pointer;padding-bottom:5px;" onclick="change_position(5505,'up');"></div>
  61.                                         <div class="link_down" id="5505"><img src="./Параметры_сайтов_files/black_down.gif" title="Передвинуть вниз" alt="down" style="cursor:pointer;padding-top:5px;" onclick="change_position(5505,'down')"></div>
  62.                                 </div></td>
  63.         <\/tr>~i', $text, $var);       
  64.        
  65. var_dump($var);
  66.  

(Добавление)
Помогите пожалуйста.

(Отредактировано автором: 07 Февраля, 2016 - 18:05:50)

 
 Top
Мелкий Супермодератор
Отправлено: 07 Февраля, 2016 - 20:14:19
Post Id



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


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


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




Где-то я эту стену текста уже видел. http://forum.php.su/topic.php?fo...&topic=18050
Вопрос: в чём разница?


-----
PostgreSQL DBA
 
 Top
event
Отправлено: 07 Февраля, 2016 - 20:37:40
Post Id


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


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


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




Мелкий, в прошлой я вытаскивал весь <tr>все что тут</tr>

А теперь мне нужно вытащить несколько данных и разбирать по переменным каждое.

Только есть один момент, таких <tr> много на странице, и мне нужно все отработать)
 
 Top
rasschitai
Отправлено: 07 Февраля, 2016 - 20:45:36
Post Id



Новичок


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


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




просто функция preg_match_all удивилась такому регулярному выражению ...

(Отредактировано автором: 07 Февраля, 2016 - 20:46:38)

 
 Top
Мелкий Супермодератор
Отправлено: 07 Февраля, 2016 - 21:05:33
Post Id



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


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


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




Итого за 3 часа две огромные простыни синтаксически-некорректной каши без каких-то пояснений.
Много ли желающих в них покопаться? Ой, даже не знаю. Отчего же мне кажется, что ни одного?

В общем, у меня сильное желание впаять штраф по пункту 1.1 правил. Но я знаю, что я сегодня злой, так что воздержусь.


-----
PostgreSQL DBA
 
 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