Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Тексты > Замена на пустую строчку


Автор: supercelt 15.10.2007, 10:28
Единственное что даётся трудно - это регулярки, поэтому прошу помощи
Есть строка 
Код

[img]some text[/img]
. Я знаю как заменить это дело на теги, но не знаю как заменить всю эту строку на ничего, ноль, потому что между скобами может быть любой текст

Автор: IAmEternaL 15.10.2007, 11:29
не совсем понятно, что ты в итоге хочешь, но - поптытаюсь помочь

вот пример того, как обрабатывать только те случаи, где содержимое бб-кода БЕЗ пробелов
Код

$str = '[img]some_text[/img]';
preg_replace('/\[img\]([^\s]*?)\[\/img]/i', '<img src="$1" />', $str);

остальные просто пропускаются, то есть в случае "some text" ничего не произойдет

вот пример удаления тех случаев, когда пробелы есть:
Код

$str = '[img]some text[/img]';
preg_replace('/\[img\].{0,}\s.{0,}\[\/img]/i', '', $str);

соответственно некий "some text" будет удален, а "some_text" - останеца

Автор: supercelt 15.10.2007, 12:08
спасибо

Автор: SelenIT 15.10.2007, 14:11
Код

preg_replace('~\[img\].*?\[/img\]~is', '', $str) /* сколько угодно любых символов, нежадный поиск */

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)