Не могу никак вогнать в регулярные выражения!
Никак не могу их догнать :-E
$text = 'Привет) http://site.com/tf/ [url]http://site.com/[/url]';
$text = preg_replace("~((http|https|ftp|ftps)://|www\.)[^\s]+~siu", '[url]$0[/url]', $text);
Эта регулярка оборачивает все ссылки в bbcode [url] Оборачивает Даже уже обёрнутую! Как сделать, чтобы она не оборачивала уже обёрнутые bbcodом? :-? |
Проще всего в несколько проходов
<html>
<script>
text = 'Привет) http://site.com/tf/ [url] http://site.com/[/url] Привет) [url]http://www.site.com/tf/[/url] http://site.com/'
alert(
text.replace(/((http|https|ftp|ftps):\/\/(www\.)?\S+)/gi, "[url]$1[/url]")
.replace(/\[url\]\s*\[url\]/ig, "[url]")
.replace(/\[\/url\]\s*\[\/url\]/ig, "[/url]")
)
</script>
</html>
|
Спасибо! За мысль! сделаю так)
|
| Часовой пояс GMT +3, время: 14:50. |