haciendo muchas pruebas la funcion preg_replace() me resulto efectiva para lo que buscaba, evidentemente esta funcion busca(con expresiones regulares) en una cadena y reemplaza, tal como plantee, mas sin embargo la funcion ereg_replace() tiene un comportamiento anormal (quizas por que trabaja con el estandar POSIX Extendido)
y pongo el codigo como referencia para quien lo necesite:
Código PHP:
$path=$path.'lang/';
$ext='.txt';
$sep='<==>';
$lang_file=$path.$lang.$ext;//es el directorio del archivo
if(file_exists($lang_file))//si el archivo existe
{
$nl=chr(13).chr(10);//caracteres delimitadores del texto a buscar
$lang_content=file_get_contents($lang_file);//contenido del archivo
$lang_content=preg_replace('/'.$palabra.' +'.$sep.' +(.*)'.$nl.'/',$palabra.' <==> '.$traduccion.$nl,$lang_content);
$f=fopen($lang_file,'w');//abre el archivo para escritura
fwrite($f,$lang_content);//escribir en el archivo
fclose($f);//cerramos el archivo
echo 'modificado!';
}
gracias a todos, saludos