Это действительно простая проблема, но я не мог найти решение нигде.
Я пытаюсь использовать preg_match или preg_match_all для получения строки из круглых скобок, но без круглых скобок .
Пока мое выражение выглядит так:
\([A-Za-z0-9 ]+\)
и возвращает следующий результат:
3 (полая подсветка) 928-129 (<- исходная строка)
(полая подсветка) (<- результат)
То, что я хочу, это строка в круглых скобках, но без круглых скобок. Это будет выглядеть так:
полая подсветка
Я мог бы, вероятно, заменить скобки после str_replace или что-то еще, но это, кажется, не очень изящное решение для меня.
Что мне нужно добавить, поэтому скобки не включены в результат?
Спасибо за вашу помощь, вы, ребята, здорово! 🙂
Вам просто нужно добавить захватывающие скобки, в дополнение к экранированным скобкам.
<?php $in = "hello (world), my name (is andrew) and my number is (845) 235-0184"; preg_match_all('/\(([A-Za-z0-9 ]+?)\)/', $in, $out); print_r($out[1]); ?>
Эти результаты:
Array ( [0] => world [1] => is andrew [2] => 845 )
пытаться:
preg_match('/\((.*?)\)/', $s, $a);
вывод:
Array ( [0] => (hollow highlight) [1] => hollow highlight )