Pues si, y entonces, ¿usando esas expresiones no funciona?
Las veo completamente válidas, lo único que veo mal entonces es que asignas el resultado del reemplazo a $replace y usas como entrada $titulo, eso explicaría porque al final $titulo queda intacto.
Debes sobreescribir el valor de $titulo por cada reemplazo.