Hallo Christoph,
Ich glaube zwar das ist ein Fehler in deinem Posting aber:
$edit =~ s/<(.*?)]/<a href="$1">$1</a>/ig;
....................^
clasht mit:
[link :http://pirgendwas...>
........^
An dem leerzeichen beist dein RegEx auf Granit.
bye eddie