Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Выбрать текст из HTML-кода

Сообщения:  [1-10]   [11-18] 

 
 автор: lusher   (24.11.2007 в 21:58)   письмо автору
 
   для: lusher   (23.11.2007 в 18:25)
 

Всем спасибо!
Читаем-с :-)

   
 
 автор: Faraon   (24.11.2007 в 01:53)   письмо автору
 
   для: lusher   (23.11.2007 в 18:25)
 

Trianon уже сказал, чуть выше

   
 
 автор: Trianon   (23.11.2007 в 21:55)   письмо автору
 
   для: lusher   (23.11.2007 в 18:25)
 

Есть лишь одна исчерпывающая книга. Дж.Фридл.

   
 
 автор: lusher   (23.11.2007 в 18:25)   письмо автору
 
   для: Faraon   (23.11.2007 в 13:39)
 

Faraon, большое спасибо за Вашу помощь! Вы мне очень помогли!!!
В конечном итоге я взял Ваш предпоследний вариант и чуть допилил. Все работает как хорошие часы :-))

PS Может быть посоветуете хорошую ссылку или книгу по регулрным выражениям?
В той ссылке, что мне дали нет тех "фишек", которые Вы использовали при написании паттернов.


Еще раз спасибо!!

   
 
 автор: Faraon   (23.11.2007 в 13:39)   письмо автору
 
   для: lusher   (23.11.2007 в 13:02)
 

Тогда поступим так

<?
$line
='<li><span>Сценарий:</span><a href="http://">Имя сценариста 0</a><br><span>Продюсер:</span> <a href="http://">Имя продюсера</a>, <a href="http://">Имя второго продюсера</a><br><span>Оператор:</span> <a href="http://">Имя оператора</a><br>';
$pattern "#Продюсер:</span>[^>]+>(.+?)<br>#is";
        if(
preg_match_all($pattern $line$matches))
        {
          foreach (
$matches[1] as $val)
            {
                 echo 
'Продюсер: 'strip_tags($val) . '<br>';
            }
        }
?>


Или так для выбора сразу всех участников
<?
$line
='<li><span>Сценарий:</span><a href="http://">Имя сценариста 0</a><br><span>Продюсер:</span> <a href="http://">Имя продюсера</a>, <a href="http://">Имя второго продюсера</a><br><span>Оператор:</span> <a href="http://">Имя оператора</a><br>';
$pattern "#<span>(.+?)</span>[^>]+>(.+?)<br>#is";
        if(
preg_match_all($pattern $line$matches))
        {
          for(
$i=0;$i<count($matches[1]);$i++){
        echo 
$matches[1][$i] .' '.strip_tags($matches[2][$i]). '<br>';
        }

        }
?>

   
 
 автор: lusher   (23.11.2007 в 13:02)   письмо автору
 
   для: Faraon   (23.11.2007 в 12:53)
 

Цель в том, чтобы выбрать все имена всех "специалистов", которые работали над созданием фильма.
В данном примере - это сценаристы. Проблема в том, что сценаристов может быть несколько.
Не важно кого вытаскивать сценаристов или продюсеров - все они выводятся одинаково.
Если допилить код, чтобы он вытаскивал всех сценаристов, то для остальных "специалистов" код я смогу поправить. Надеюсь :-)

   
 
 автор: Faraon   (23.11.2007 в 12:53)   письмо автору
 
   для: lusher   (23.11.2007 в 12:05)
 

Так подождите! Вам нужен был сценарист!
А теперь вы говорите насчет прдюсеров
Поконкретнее скажите что вам нужно вытащить?

   
 
 автор: lusher   (23.11.2007 в 12:05)   письмо автору
 
   для: Faraon   (23.11.2007 в 08:47)
 


        $pattern = "|Сценарий:</span>[^>]+>(.+?)</a>|is";
        if(preg_match_all($pattern , $line, $matches))
        {
            //echo('Сценарий: '. $matches[1][0] . '<br>');
            //print_r($matches);
            foreach ($matches[1] as $val)
            {
                 echo 'Сценарий: '. $val . '<br>';
            }
        }

   
 
 автор: Faraon   (23.11.2007 в 08:47)   письмо автору
 
   для: lusher   (23.11.2007 в 00:18)
 

Приведите этот кусок кода как вы делаете

   
 
 автор: lusher   (23.11.2007 в 00:18)   письмо автору
 
   для: Faraon   (22.11.2007 в 15:23)
 

Не получается. Возвращает только текст из последней ссылки :-(

   

Сообщения:  [1-10]   [11-18] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования