У меня есть строка, которую я собираюсь заменить. Тем не менее, я бы хотел использовать только часть шаблона, который я сопоставляю.Доступ к группе захвата в preg_replace_callback
Пример:
$subject = "methodName(127)";
$callback = function($match)
{
echo $match[0];
// will echo 'methodName(127)'
return;
}
preg_replace_callback('/[a-z]+\([0-9]+\)/', $callback, $subject, 1);
В этом примере, мой метод обратного вызова получит доступ ко всей игре шаблона. Однако я хотел бы выделить только числа между круглыми скобками. Группа захвата, казалось бы, была бы полезной здесь, но я не знаю, есть ли способ получить к ней доступ в пределах $callback
или, возможно, передать ее в качестве аргумента (например, use ($arg)
).
Я понимаю, что я могу просто preg_match
шаблон между круглыми скобками в $callback
, но мне интересно, возможно ли это сделать с группами захвата.