Forum Webscript.Ru
Программирование => Регулярные выражения => Тема начата: Berkut от 05 Февраля 2005, 20:12:47
-
нужно из строки вырезать все вхождения
{текст} но не вырезать {MESSAGE}
/([^{message}]{[\\w]})/Ui
как указать то, что неподходит к условиям поиска?
[^abc] - ищется любой символ, отличный от a или b или c. А как указать, что abc - это строка?
-
покажи пример текста, что из него вырезать и желаемый результат
-
текст:
some text
jhbjihbhb {ERR_MESS} {CONTENT}
{MESSAGE}njnhiinnji
после обработки должно остаться:
some text
jhbjihbhb
{MESSAGE}njnhiinnji
т.е. все конструкции {SOME_TEXT} должны быть удалены, кроме одной конструкции - {MESSAGE}
-
$str = "
some text
jhbjihbhb {ERR_MESS} {CONTENT}
{MESSAGE}njnhiinnji";
echo preg_replace("~\\\\{((?!message).)*?\\\\}~si", "", $str);
-
Макс большое спасибо!