Проверьте, работает ли это:
$url = "example-com--folder";
$searchArray = array('([^-])-([^-])','--');
$replaceArray = array('$1.$2','/');
$url = preg_replace("$searchArray", "$replaceArray", $url);
это говорит о том, что "соответствует любому - у которого нет тире до или после, и замените его на". и "соответствует двойному - с /". очевидно, вы можете расширить это, чтобы ограничить второе совпадение 2 штрихами, только добавив ([^ -]) в начале и в конце. как таковое, «-----» станет «//», чего вы можете не хотеть.