АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP или фреймворки. Сегодня последний день для записи! Жми!
⊗ppPmRgLE 202 of 402 menu
НОВИНКА: Практика на Реальных Проектах и Работы в Портфолио. Бесплатный курс! Жми для записи!

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

Если символ не является специальным, то, когда вы используете его в качестве ограничителя, его нужно будет экранировать в самой регулярке. Посмотрим на примере.

Пусть у нас в качестве ограничителей выступают решетки, а внутри регулярки мы ищем символ амперсанда. Так как амперсанд не является спецсимволовм, то мы его не экранируем:

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

Пусть теперь ограничители - амперсанды и внутри регулярки нам также нужен амперсанд. В таком случае амперсанд внутри приходится экранировать, иначе это вызовет ошибку PHP:

<?php echo preg_replace('&a\&b&', '!', 'a&b'); // выведет '!' ?>

Исправьте ошибку, допущенную в следующем коде:

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