Полагаю, вы могли бы просто использовать регулярное выражение и функцию preg_replace
, чтобы заменить все, что находится между [
и ]
, пустой строкой:
$str = '[B]This is bold[/B] and This is [color=#FFCCCC]colored[/color]';
echo preg_replace('#\[[^\]]+\]#', '', $str);
Будет отображаться:
This is bold and This is colored
Здесь шаблон, который я использовал, соответствует:
- a
[
символ: \[
- Все, что не является символом
]
: [^\]]
- Один или несколько раз:
[^\]]+
- и символ
]
: \]
Обратите внимание, что [
и ]
имеют особое значение - это означает, что вы должны избегать их, когда вы хотите, чтобы они интерпретировались буквально.