- var_dump: documentation ( source)
- preg_replace: documentation ( source)
<?php
$patterns = [
'/home',
'/user',
'/user/profile/{id}',
'/user/{id}/edit',
];
foreach($patterns as $pattern)
{
$pattern_regex = preg_replace("/\{(.*?)\}/", "(?P<$1>[\w-]+)", $pattern);
$pattern_regex = "#^" . $pattern_regex . "$#";
var_dump($pattern_regex);
}