- var_dump: documentation ( source)
- array_combine: documentation ( source)
- strtr: documentation ( source)
- preg_match_all: documentation ( source)
<?php
$string = "/companies/(\d+)/adverts/new/(\d+)";
preg_match_all('#\((.*?)\)#', $string, $matches);
$search = $matches[0];
$replace = array(2223, 'generic');
$result = strtr($string, array_combine($search, $replace));
var_dump($result);