хочу изменить / randomword / (подстановочный знак) с / page-1 /
так URL будет заменен как http://www.example.com/randomword/page-1/fixed/index?ok=as
$url="http://www.example.com/randomword/fixed/index?ok=as";$url= preg_replace('//(.*?)/fixed', '/randomword/page-1/fixed', $url);
не работает / смущает меня, когда я не знаю, когда избежать этого
Для str_replace () нет подстановочных знаков; Вы хотите использовать вместо preg_replace ().
Попробуй это:
$url= preg_replace('~/(.*?)/fixed~', '/randomword/page-1/fixed', $url);
Кроме того, вот отличный инструмент, который поможет вам создавать регулярные выражения на разных языках: http://txt2re.com/
Дальнейшее чтение:
Большое спасибо @ chris85, который предоставил большую часть информации для этого ответа!
Других решений пока нет …