|
|
|
| есть строка <td class="alt1"><a class="smallfont" href="forumdisplay.php?f=6&page=501&order=desc" title="с 8001 по 8016, из 11787"><!--+500-->501</a></td>
из нее вытащить forumdisplay.php?f=6&page=501&order=desc можно конечно с помощью pos, posex и copy но нужно именно с помощью регулярных выражений. Написал так:
(href=")([^"]+)*([<][^\s]{4}[0-9]+[^\s]{3}) но не работает ( | |
|
|
|
|
|
|
|
для: lucifer
(05.11.2010 в 20:25)
| | Есть конкретно эта строка, или эта строка является небольшой частью куда большей строки? | |
|
|
|
|
|
|
|
для: lucifer
(05.11.2010 в 20:25)
| | А твоя регулярка и вытаскивает то, что тебе необходимо... Только в паттерне оставь это
(href=")([^"]+)
а остальное стирай | |
|
|
|
|
|
|
|
для: Tonik992
(06.11.2010 в 03:19)
| | нее так в в коде много ссылок может быть, и в таком виде регулярка вытащит url из всех ссылок | |
|
|
|
|
|
|
|
для: lucifer
(06.11.2010 в 15:02)
| | Объясни подробнее, что нужно вытащить.. Я не могу связать то, что тебе нужно, и та регулярка, которую ты предложил... | |
|
|
|
|
|
|
|
для: Tonik992
(06.11.2010 в 15:53)
| | в коде есть несколько ссылок в которых есть <!--+500--> (вместо 500 может быть любое число)
вот и нужно вытащить url из них | |
|
|
|
|
|
|
|
для: lucifer
(06.11.2010 в 18:12)
| |
<?php
$out = NULL;
$string = '<td class="alt1"><a class="smallfont" href="forumdisplay.php?f=6&page=501&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&page=501&order=desc" title="с 8001 по 8016, из 11787">
)
[1] => Array
(
[0] => forumdisplay.php?f=6&page=501&order=desc
)
)
*/
?>
|
Если хочешь найти только те ссылки, которые содержат <!--+500--> так используй (?=<!--\+[0-9]+-->) (конкретно для цифры 500 - (?=<!--\+500-->)
знакомо? | |
|
|
|