- preg_replace_callback: documentation ( source)
- strtr: documentation ( source)
- preg_replace: documentation ( source)
<?php
$str = '/some-folders/../pattern,also-replacement-area/parameter-one';
echo preg_replace('~(?:^.*?/pattern,)?(?!^)[^/-]*+\K-~A', '~', $str),
PHP_EOL,
preg_replace_callback('~/pattern,[^/]*~', fn($m) => strtr($m[0], '-', '~'), $str), // other way (more simple pattern)
PHP_EOL;