аналогично этому примеру, php: убрать скобки / содержимое из строки? я не имею понятия заменить
$str = '(ABC)some text'
в
$str = 'ABC';
в настоящее время используется $str = preg_replace('/(.)/','',$str);, но не работает. как это исправить?
$str = preg_replace('/(.)/','',$str);
Вместо preg_replace я бы использовал preg_match:
preg_match('#\(([^)]+)\)#', $str, $m); echo $m[1];
Я бы вообще не использовал здесь регулярные выражения. Вместо этого вы можете использовать обычные строковые функции, например: $ str = str_replace (array ('(', ')'), array (), $ str);
Если вы хотите использовать замену, вы можете использовать следующее:
$str = "(ABC)some text"; $str = preg_replace("/^.*\(([^)]*)\).*$/", '$1', $str);
Шаблон будет соответствовать всей строке и заменяет ее тем, что найден в скобках
Попробуйте это:
$str = preg_replace('/\((.*?)\).*/','\\1',$str);