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

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

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Вырезать ссылки по шаблону
 
 автор: Night_Charter   (29.05.2008 в 23:59)   письмо автору
 
 

Здравствуйте, помогите составить регулярное выражение!
Суть вот в чем..
Есть html код:

<p> Текст, текст
Текст, текст
Текст, текст
Текст, текст</p>
(далее идут ссылки)
<a href="http://depositfiles.com/files/xxxx">Скачать</a>
<a href="http://rapidshare.com/files/xxxx">Скачать</a>
<a href="http://vip-file.com/download/73db3c367154/xxxx">Скачать</a>
<a href="bla-bla.ru">тут левая ссылка</a>

Не могу составить регулярное выражение, которое вырежет ссылки только для depositfiles, rapidshare и vip-file, при этом не трогая остальные ссылки в тексте.
Хотелось бы на выходе получить массив этих ссылок.
Буду Вам благодарен за любую подсказку!

   
 
 автор: Night_Charter   (30.05.2008 в 17:01)   письмо автору
 
   для: Night_Charter   (29.05.2008 в 23:59)
 

Кто-то поможет?
Я отблагодарю )

   
 
 автор: Alph[p]a   (30.05.2008 в 17:53)   письмо автору
 
   для: Night_Charter   (30.05.2008 в 17:01)
 

так пойдет?

<?php
$text
='<p> Текст, текст 
Текст, текст 
Текст, текст 
Текст, текст</p> 
(далее идут ссылки) 
<a href="http://depositfiles.com/files/xxxx">Скачать</a> 
<a href="http://rapidshare.com/files/xxxx">Скачать</a> 
<a href="http://vip-file.com/download/73db3c367154/xxxx">Скачать</a> 
<a href="bla-bla.ru">тут левая ссылка</a>'
;

$pattern='#(<a href="http\:\/\/(depositfiles|rapidshare|vip-file)\.com\/(.*)<\/a>)#';
// ищем
preg_match_all($pattern,$text,$arr,PREG_PATTERN_ORDER);
echo 
'<pre>';
print_r($arr[1]);
echo 
'</pre>';
?>

   
Rambler's Top100
вверх

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