Поскольку вы знаете, как это работает с 1 словом, вам нужно только получить первое слово, а затем поставить свой алгоритм.
- Попробуйте
preg_replace_callback
с "/^(\w+)/"
- Заменить последний символ в методе обратного вызова.
preg_replace_callback: http://php.net/manual/en/function.preg-replace-callback.php
ОБНОВЛЕНИЕ - рабочий код:
$string = "This is a test";
$string = preg_replace_callback(
'/^(\w+)/',
create_function(
'$matches',
'return yourUCLastAlgorithm($matches[0]);'
),
$string
);
echo $string;
UPDATE2 - использование preg_replace с модификатором e:
$string = "This is a test";
$string = preg_replace(
'/^(\w+)/e',
'yourUCLastAlgorithm("$1")',
$string
);
echo $string;