- preg_replace: documentation ( source)
<?php
$txt = 'dog blah crocodile blah dog blah cat blah crocodile blah dog blah crocodile blah dog blah cat blah dog blah cat blah crocodile blah dog blah crocodile blah mice blah cat blah crocodile';
//dog blah replacement blah dog blah cat blah crocodile blah dog blah replacement blah dog blah cat blah dog blah cat blah crocodile blah dog blah replacement blah mice blah cat blah crocodile
echo preg_replace('/(?:dog|mice)(?:(?!dog|mice|cat).)* \Kcrocodile(?= (?:(?!dog|mice|cat).)* (?:dog|mice))/', 'replacement', $txt);