Екраниране на ограничители в PHP

Ако символът не е специален, тогава, когато го използвате като ограничител, той ще трябва да бъде екраниран в самия регулярен израз. Нека разгледаме пример.

Нека ограничителите ни са решетки, а вътре в регулярния израз търсим символа амперсанд. Тъй като амперсандът не е специален символ, ние не го екранираме:

php<?php
  echo preg_replace('#a&b#', '!', 'a&b'); // ще изведе '!'
?>

Нека сега ограничителите са амперсанд и вътре в регулярния израз също ни трябва амперсанд. В този случай амперсандът вътре трябва да бъде екраниран, иначе това ще причини грешка в PHP:

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

Поправете грешката, допусната в следния код:

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