No lo he probado pero es posible que replace sea mas eficiente que usar expresiones regulares.
Del manual de PHP :
Cita: str_replace
This function returns a string or an array with all occurrences of search in subject replaced with the given replace value. If you don't need fancy replacing rules (like regular expressions), you should always use this function instead of ereg_replace() or preg_replace().
alguien tiene ganas de testearlo ?
saludos