php: удалить скобки / содержимое строки? - PullRequest
9 голосов
/ 26 августа 2009

Если у меня есть такая строка:

$str = "blah blah blah (a) (b) blah blah blah";

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

$str = "blah blah blah blah blah blah";

Он должен поддерживать любое количество пар скобок внутри строки.

Ответы [ 3 ]

39 голосов
/ 26 августа 2009

Это должно сработать:

$str = trim(preg_replace('/\s*\([^)]*\)/', '', $str));

Обратите внимание, этот ответ также удаляет пробелы в скобках, в отличие от других предложений.

Обрезка выполняется в том случае, если строка начинается с квадратной скобки, и в этом случае пробел, следующий за ней, не удаляется.

4 голосов
/ 26 августа 2009

Попробуйте это:

preg_replace('/\([^)]*\)|[()]/', '', $str)
1 голос
/ 26 августа 2009
$string = preg_replace('~\(.*?\)~', '', $string);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...