PHP: регулярное выражение удалить скобку в строке - PullRequest
2 голосов
/ 14 июня 2010

аналогично этому примеру, php: убрать скобки / содержимое из строки? я не имею понятия заменить

$str = '(ABC)some text'

в

$str = 'ABC';

в настоящее время используется $str = preg_replace('/(.)/','',$str);, но не работает. как это исправить?

Ответы [ 4 ]

2 голосов
/ 14 июня 2010

Вместо preg_replace я бы использовал preg_match:

preg_match('#\(([^)]+)\)#', $str, $m);
echo $m[1];
1 голос
/ 14 июня 2010

Я бы вообще не использовал здесь регулярные выражения. Вместо этого вы можете использовать обычные строковые функции, например: $ str = str_replace (array ('(', ')'), array (), $ str);

1 голос
/ 14 июня 2010

Если вы хотите использовать замену, вы можете использовать следующее:

 $str = "(ABC)some text";
 $str = preg_replace("/^.*\(([^)]*)\).*$/", '$1', $str);

Шаблон будет соответствовать всей строке и заменяет ее тем, что найден в скобках

0 голосов
/ 14 июня 2010

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

$str = preg_replace('/\((.*?)\).*/','\\1',$str);
...