Per quello che devi fare non occorre utilizzare le espressioni regolari (e cmq meglio usare le preg_* invece delle ereg*, sono pių potenti e veloci).
Prova una cosa del genere:
Codice PHP:
$find=array(
'${nom}$'
,'${cog}$'
);
$replace=array(
'tizio caio'
,'sempronio'
);
$testo = 'irw eroih oiwrhe oihwre ${nom}$ oihr oiehw oihe ${cog}$ ${nom';
echo $testo."
\n\n";
echo str_replace( $find,$replace,$testo )."
\n\n";