|
|
|
|
|
для: Faraon
(06.07.2007 в 14:57)
| | > [>+] -это означает что должна быть хотя бы одна >
Это означает именно одна > или один плюс. Не больше, не меньше.
> Можно было и просто написать >+ от этого независит
Нужно было писать именно так, но только без плюса
> (.*) жадность тутнужна для того чтобывыбрать все символы которые встретятся в вырезаемом тексте, а не сидеть и прописывать их все
Нуну.. В том то и дело что все, а не те, что попадут внутрь тега. Попробуйте обработать этим рег. выражением два рядом стоящих <a> </a> | |
|
|
|
|
|
|
|
для: SHAman
(06.07.2007 в 15:58)
| | Спасибо! | |
|
|
|
|
|
|
|
для: yoyo
(06.07.2007 в 15:21)
| | (.*?) - это поиск минимального количества символов, а
(.*) - максимального. Скажем, пример:
слово "каракатица".
Если будем искать по /(.*)а/, то в $1 окажется "каракатиц", а если по /(.*?)/, то "к". | |
|
|
|
|
|
|
|
для: yoyo
(06.07.2007 в 14:58)
| | Может кто подскажет чем отличается (.*?) от (.*)...
Просто помню, что мне нужен был именно первый случай.. не могу вспомнить почему именно так. | |
|
|
|
|
|
|
|
для: kasmanaft
(06.07.2007 в 14:50)
| | Все норм заработало.. извиняюсь.. ошибка была в другом месте.. Просто давно с регулярными выражениями разбирался.. уже забыл что к чему.. думал может в чем ошибся..
И почему вы считаете, что конструкция (.*?) не должна работать? я вот честно забыл почему именно так.. но работает) | |
|
|
|
|
|
|
|
для: kasmanaft
(06.07.2007 в 14:50)
| | [>+] -это означает что должна быть хотя бы одна >
Можно было и просто написать >+ от этого независит
(.*) жадность тутнужна для того чтобывыбрать все символы которые встретятся в вырезаемом тексте, а не сидеть и прописывать их все
Где <a согласен можно было так не делать но писал на скорую руку, так как свободного времени мало | |
|
|
|
|
|
|
|
для: Faraon
(06.07.2007 в 14:42)
| | <a (.*) - с такой жадностью выражение не может работать правильно (не конкретно в этом случае, а вообще)
[>+] - это вообще что-то непонятное
(.*) - тут опять жадность...
</a> | |
|
|
|
|
|
|
|
для: yoyo
(06.07.2007 в 14:33)
| |
$r='<div class="best-site"><a href="http://www.site.ru/" target="_blank">это интересный сайт о...</a>';
preg_match('#<div class="best-site"><a (.*)[>+](.*)</a>$#', $r, $regs);
print $regs[2];
|
| |
|
|
|
|
|
|
|
для: yoyo
(06.07.2007 в 14:33)
| |
<?
$text="
<div class=\"best-site\"><a href=\"http://www.site.ru/\" target=\"_blank\">это интересный сайт о...</a>
";
$pattern = "/<div class=\"best-site\"><a[^>]+>(.*)<\/a>/s";
preg_match_all($pattern,$text,$regs);
echo $regs[1][0];
?>
|
| |
|
|
|
|
|
|
| html
<div class="best-site"><a href="http://www.site.ru/" target="_blank">это интересный сайт о...</a>
Выражение
$pattern = "/<div class=\"best-site\"><a[^>]+>(.*?)<\/a>/s";
Нужен текст из <a>текст</a>
Не могу понять где ошибка, не работает, возвращает пустой массив. Заранее спасибо. | |
|
|
|
|