|
|
|
|
|
для: kasmanaft
(18.01.2008 в 18:13)
| | да, действительно! извините! щас разберусь :))) опять наверное где-нибудь что-нибудь забыл :))))) ещё раз извините и спасибо огромное за помощь!!! | |
|
|
|
|
|
|
|
для: afdm
(18.01.2008 в 15:18)
| | Не может быть... покажите код.
Если в мой код вставить этот урл, работает? У меня вроде работает...
> cкоро номер совпадёт с кол-вом сообщений
Жду, не дождусь :)) Как бы не прозевать) | |
|
|
|
|
|
|
|
для: afdm
(18.01.2008 в 14:51)
| | :((( неа, всё-таки не полностью работает :(((
в обычной ссылке:
<a href="http://www.ya.ru">ya.ru</a>
после <a href=" всё остальное преобразуется в ссылку, причем очень некорректную :((((((((((
http://www.ya.ru">ya.ru</a> | |
|
|
|
|
|
|
|
для: kasmanaft
(18.01.2008 в 10:09)
| | спасибо, друг!!!!!!!!!!!!!!!! :)))))))))))))))))) я почти так же написал... где-то немного осталось... щас всё просмотрю :))))))))))))))
ЗЫ кстати, поздравляю!!! Скоро Ваш порядковый номер (2777) совпадёт с кол-вом сообщений (уже 2707) :)))) | |
|
|
|
|
|
|
|
для: afdm
(17.01.2008 в 21:56)
| | Должно работать...
<?php
$text = 'text [ url=http://yandex.ru]yandex[/url] text [ url]http://yandex.ru[/url] text
text http://yandex.ru text <a href="http://www.yandex.ru">yandex</a>';
$pattern = "#(?<![>\"])(?<!\[url=)http://((?>[^\s\[\]]+))(?!\s*\[\/url\])#i";
$replacement = "<a href=\"http://\\1\">http://\\1</a>";
echo preg_replace($pattern, $replacement, $text);
/* на выходе
text [ url=http://yandex.ru]yandex[/url] text [ url]http://yandex.ru[/url] text
text <a href="http://yandex.ru">http://yandex.ru</a> text <a href="http://www.yandex.ru">yandex</a>
*/
?>
|
PS перед url, конечно, пробела нет.. это чтобы форум не съел бб тег. | |
|
|
|
|
|
|
|
для: Loki
(17.01.2008 в 17:33)
| | спасибо :))) на 50% работает :(((
а если пользователь вводит ссылку вида <a href="http://www.yandex.ru">yandex</a> ???
в результате нижеприведённое выражение преобразует подобные ссылки в нечно ужасно:
<a href="http://www.ya.ru">ya.ru</a> (часть после <a href= - уже гиперссылка... :(((
как тогда исправить вот это рег выражение?
<?
"#(?<![>\"])(?<!\[url=)http://((?>[^\s\[\]]+))(?!\s*\[\/url\])#i"
/* заменяю на */
"<a href=\"http://\\1\">http://\\1</a>"
|
заранее вам спасибо! :))) | |
|
|
|
|
|
|
|
для: kasmanaft
(17.01.2008 в 17:20)
| | а символ который захапали перед URL надо на место вернуть:) на то он в группе и находится.
>наверное, надо ]
я первой строчкой написал, что cначала надо отпарсить bbcode. Как раз чтобы всяких значащих [] не оставалось | |
|
|
|
|
|
|
|
для: Loki
(17.01.2008 в 15:44)
| | Тогда перед ссылкой после замены будет не достовать символа... который под [^>"] попадет.
Наверное надо вот так сделать: (?<![>"])и далее регулярка
PS Вместо кавычек и >, наверное, надо ] - это форум bb тег проглотил... | |
|
|
|
|
|
|
|
для: Loki
(17.01.2008 в 15:44)
| | спасибо! попробую!!! если что - напишу :))) | |
|
|
|
|
|
|
|
для: Loki
(17.01.2008 в 15:44)
| | спасибо! попробую!!! если что - напишу :))) | |
|
|
|
|