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

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

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

 

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

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

тема: помочь с рег. выражениями
 
 автор: lucifer   (05.11.2010 в 20:25)   письмо автору
 
 

есть строка <td class="alt1"><a class="smallfont" href="forumdisplay.php?f=6&amp;page=501&amp;order=desc" title="с 8001 по 8016, из 11787"><!--+500-->501</a></td>
из нее вытащить forumdisplay.php?f=6&amp;page=501&amp;order=desc можно конечно с помощью pos, posex и copy но нужно именно с помощью регулярных выражений. Написал так:
(href=")([^"]+)*([<][^\s]{4}[0-9]+[^\s]{3}) но не работает (

  Ответить  
 
 автор: neadekvat   (05.11.2010 в 23:16)   письмо автору
 
   для: lucifer   (05.11.2010 в 20:25)
 

Есть конкретно эта строка, или эта строка является небольшой частью куда большей строки?

  Ответить  
 
 автор: Tonik992   (06.11.2010 в 03:19)   письмо автору
 
   для: lucifer   (05.11.2010 в 20:25)
 

А твоя регулярка и вытаскивает то, что тебе необходимо... Только в паттерне оставь это
(href=")([^"]+)
а остальное стирай

  Ответить  
 
 автор: lucifer   (06.11.2010 в 15:02)   письмо автору
 
   для: Tonik992   (06.11.2010 в 03:19)
 

нее так в в коде много ссылок может быть, и в таком виде регулярка вытащит url из всех ссылок

  Ответить  
 
 автор: Tonik992   (06.11.2010 в 15:53)   письмо автору
 
   для: lucifer   (06.11.2010 в 15:02)
 

Объясни подробнее, что нужно вытащить.. Я не могу связать то, что тебе нужно, и та регулярка, которую ты предложил...

  Ответить  
 
 автор: lucifer   (06.11.2010 в 18:12)   письмо автору
 
   для: Tonik992   (06.11.2010 в 15:53)
 

в коде есть несколько ссылок в которых есть <!--+500--> (вместо 500 может быть любое число)
вот и нужно вытащить url из них

  Ответить  
 
 автор: Tonik992   (07.11.2010 в 00:48)   письмо автору
 
   для: lucifer   (06.11.2010 в 18:12)
 


<?php
$out 
NULL;
$string '<td class="alt1"><a class="smallfont" href="forumdisplay.php?f=6&amp;page=501&amp;order=desc" title="с 8001 по 8016, из 11787"><!--+500-->501</a></td>';
preg_match_all("/<a.+?href=\"([^\"]+)\"[^>]+>(?=<!--\+[0-9]+-->)/i"$string$out);
print_r($out);
/*
 Array
 (
   [0] => Array
   (
      [0] => <a class="smallfont" href="forumdisplay.php?f=6&amp;page=501&amp;order=desc" title="с 8001 по 8016, из 11787">
   )
   [1] => Array
   (
      [0] => forumdisplay.php?f=6&amp;page=501&amp;order=desc
   )
 )
 */
?>

Если хочешь найти только те ссылки, которые содержат <!--+500--> так используй (?=<!--\+[0-9]+-->) (конкретно для цифры 500 - (?=<!--\+500-->)
знакомо?

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

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