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

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

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

 

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

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

тема: Вырвать ссылку
 
 автор: Icen   (13.09.2008 в 14:13)   письмо автору
 
 

Здравствуйте, скажите пожалуйста, как ссылку получить вот из этого текста:

<div id="download_url" >
<form action="http://site.com/build.jpg" method="get" onSubmit="download_started();show_begin_popup(0);">
<input class="download" value="Скачать файл" type="submit"/>
</form>
</div>


Нужно получить http://site.com/build.jpg
Спасибо за внимание!

  Ответить  
 
 автор: xx77   (13.09.2008 в 15:29)   письмо автору
 
   для: Icen   (13.09.2008 в 14:13)
 

<?
$text 
'<div id="download_url" > 
<form action="http://site.com/build.jpg" method="get" onSubmit="download_started();show_begin_popup(0);"> 
<input class="download" value="Скачать файл" type="submit"/> 
</form> 
</div>'


preg_match('#http://[^\s"\'>]*#'$text$t); 
print 
$t[0] . '<hr/>'

preg_match('#<form action=(["\'])((?:(?!\1).)*)\1#'$text$t); 
print 
$t[2] . '<hr/>';

preg_match('#(?<=<form action=["\'])[^"\']*#'$text$t);
print 
$t[0] . '<hr/>';

preg_match('#<form action=["\']?(.*?)[\s"\'>]#s'$text$t); 
print 
$t[1] . '<hr/>';

preg_match(
'#<div[^>]+?id="download_url"(?:(?!</div|<form).[^<]*)*<form[^>]*?\saction=["\']?([^\s"\'>]*)#si'
$text$t); 
print 
$t[1] . '<hr/>'

preg_match('#["\'](http://[^/]+/build.jpg)["\']#'$text$t); 
print 
$t[1] . '<hr/>'
?>

  Ответить  
Rambler's Top100
вверх

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