fork download
  1. <?
  2. $text=<<< HEREDOC
  3. [img=4_bh77jks0a.jpg]Картинка[/img]
  4. [img=4_bh77jks0b.jpg][/img]
  5. HEREDOC;
  6. $RE1="/\[img=([^\]]*?)\](.*?)\[\/img\]/is";
  7. $RE2="/\[img=([^\]]*?)\](.+?)?\[\/img\](?=.*(<img src=\")(\" )(\/>))(?(2)(?=.*(alt=\")(\" )))|#.*?$/is";
  8. echo preg_replace_callback($RE1, "clb", $text)."\n\n";
  9. echo preg_replace($RE2, "$3$1$4$6$2$7$5", $text."#<img src=\"\" />alt=\"\" ");
  10. function clb($arr){
  11. return "<img src=\"$arr[1]\" ".($arr[2]?"alt=\"$arr[2]\" ":"")."/>";
  12. }
  13. ?>
Success #stdin #stdout 0.02s 13064KB
stdin
Standard input is empty
stdout
<img src="4_bh77jks0a.jpg" alt="Картинка" />
<img src="4_bh77jks0b.jpg" />

<img src="4_bh77jks0a.jpg" alt="Картинка" />
<img src="4_bh77jks0b.jpg" />