substitua todos os "foo" entre duas tags HTML usando REGEX (código PHP)

Eu quero um código regex, para substituir todas as strings "foo" por "bar", entre as tags html pre> </ pre>

aqui está um exemplo

< html>
< p> blah blah blah foo try foo< /p>
< pre> foo try foo word foofoo < /pre>
< /html>

shoud be

< html>
< p> blah blah blah foo try foo< /p>
< pre> bar try bar word barbar < /pre>
< /html>

so significa que todo o caminho entre as tags pré deve ser substituído po

entei usar esse padrão regex, mas não está funcionand

do {
$string = preg_replace('/< pre>([^)]*)foo([^)]*< /pre>)/U', '\1boo\2', $string, -1,$count);
}while($count != 0);
echo $string;

sinto muito pelo meu inglês Obrigado,

questionAnswers(3)

yourAnswerToTheQuestion