Если у меня есть строка вроде этого:
$str = "blah blah blah (a) (b) blah blah blah";
Как я могу создать регулярное выражение так, чтобы выход:
$str = "blah blah blah blah blah blah";
Он должен иметь возможность поддерживать любое количество пар скобок внутри строки.
Это должно сделать трюк:
$str = trim(preg_replace('/\s*\([^)]*\)/', '', $str));
Обратите внимание: этот ответ также удаляет пробелы вокруг скобки, в отличие от других предложений.
Обрезка выполняется в том случае, если строка начинается с раздела в квадратных скобках, и в этом случае пробелы, следующие за ней, не удаляются.
Попробуй это:
preg_replace('/\([^)]*\)|[()]/', '', $str)
$string = preg_replace('~\(.*?\)~', '', $string);