regex — Как заменить что-либо до и после фигурных скобок, но сохранить содержимое между ними, используя переполнение стека

Мне нужна ваша помощь, как я могу удалить что-нибудь после и до curly brackets {} в PHP, Но я не хочу удалять curly brackets и содержание внутри него, так что если есть что-то после или перед фигурными скобками.

Я попробовал это:

 preg_replace('/.[^{]|[^\n{]+.+[^}|}]./', "", $string)

Но это не работает.

-3

Решение

С помощью этого кода вы можете заменить что-либо после и до curly brackets

$string = preg_replace('#\{.*?\}#si', '', $string);

0

Другие решения

Это предполагает не вложенные скобки.
Найти: [^{}]*(\{[^{}]*\})[^{}]*
Заменить: $1

 [^{}]*
(                             # (1 start)
\{
[^{}]*
\}
)                             # (1 end)
[^{}]*
0

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector