Entschuldige, ich dachte das ich eh schon mal geschrieben hab, dass es öfter ersetzt werden soll...
Stimmt das nun so?
preg_match_all("/[id=([1-9]*?)]/", $str, $index);
while($index as $replace)
$str = preg_replace("[id=".$replace[1]."]", ' <a href="'.$replace[1].'">' . $id_namen[$replace[1]] . "</a>", $str);
DANKE
Harald