Échappement des délimiteurs en PHP

Si un caractère n'est pas spécial, alors, lorsque vous l'utilisez comme délimiteur, il faudra l'échapper dans l'expression régulière elle-même. Regardons un exemple.

Supposons que des dièses soient utilisés comme délimiteurs, et à l'intérieur de l'expression régulière, nous recherchons le symbole esperluette. Puisque l'esperluette n'est pas un caractère spécial, nous ne l'échappons pas :

php<?php
  echo preg_replace('#a&b#', '!', 'a&b'); // affichera '!'
?>

Supposons maintenant que les délimiteurs soient des esperluettes et qu'à l'intérieur de l'expression régulière, nous ayons également besoin d'une esperluette. Dans ce cas, l'esperluette à l'intérieur doit être échappée, sinon cela provoquera une erreur PHP :

php<?php
  echo preg_replace('&a\&b&', '!', 'a&b'); // affichera '!'
?>
Задание 1

Corrigez l'erreur commise dans le code suivant :

php<?php
  echo preg_replace('#a#b#', '!', 'a#b');
?>