Escaping dei delimitatori in PHP

Se un carattere non è speciale, allora, quando lo usi come delimitatore, dovrà essere escapato all'interno dell'espressione regolare stessa. Vediamo un esempio.

Supponiamo che i cancelletti fungano da delimitatori, e all'interno dell'espressione regolare cerchiamo il carattere "e commerciale" (&). Poiché "e commerciale" non è un metacarattere, non lo escapiamo:

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

Supponiamo ora che i delimitatori siano "e commerciale" (&) e all'interno dell'espressione regolare ci serva anche un "e commerciale". In questo caso, "e commerciale" all'interno deve essere escapato, altrimenti causerà un errore PHP:

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

Correggi l'errore commesso nel seguente codice:

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