Potresti fare cosi

codice:
<?php 
$pattern  = "|\[([^]]+)\]|sU";
$imageDir = "image_dir/";
$testo    = "Il nuovo clan [image1.bmp] I ribelli ha passato la finale del torneo XxX [image2.jpg]";
$testo2   = preg_replace($pattern,"<img src=\"$imageDir\\1\">",$testo);
print $testo2;

?>