Не работает preg_replace

4you

еееххххх....
Не работает preg_replace

Народ подскажите почему может не работать такой пример:
PHP:
$inp = "[url]http://www.php.net[/url]";
$inp = preg_replace("/(\[url\])(.*)(\[\/url\])/U","<a href=\2>\2</a>", $inp);
выдаёт вот такое: "<a href=></a>". Заранее спаибо
 

Demiurg

Guest
$inp = preg_replace('/(\[url\])(.*)(\[\/url\])/U','<a href=\2>\2</a>', $inp);
обрати внимание на кавычки.
 

.des.

Поставил пиво кому надо ;-)
4you простите а что ты заменять то собрался в исходной строке?
$inp="[url ]aaaa[/url ]";
а твою исходную строку этот рег оставит без изменения.
 

4you

еееххххх....
Да спасибо. Но вот такая продлема:примерно в таком файле:

[title]В Гомеле могут быть сняты все вопросы[/title]
[main]&nbsp;&nbsp;&nbsp;Во вторник латвийская сборная по &nbsp;&nbsp;&nbsp;В случае победы латвийская команда <br>
&nbsp;&nbsp;&nbsp;Латвии: <br>
Айнар Багатскис, Увис Хелманис, Каспар Камбала, Бруно.[/main]
[source]www.sportsnews.lv[/source]

теги [title] и [source] меняет на то что надо а тег [main] нет. Меняю при помощи верхнего примера. Заранее спасибо
 

.des.

Поставил пиво кому надо ;-)
$inp = preg_replace("/\[main\](.*)\[\/main\]/si","<body>\\1</body>", $inp);
Попробуй так
Обрати внимание на Pattern Modifiers
 

4you

еееххххх....
Спасибо так работает. А /U, /si ето какие-то ключи?
 

4you

еееххххх....
Да да. Я не до конца прочёл твоё сообщение. Спасибо :)
 
Сверху