Ответ 1
На самом деле основной синтаксис для регулярных выражений, поддерживаемый preg_replace
и друзьями, довольно легко узнать. Подумайте об этом как строку, описывающую шаблон с определенными символами, имеющими особый смысл.
В вашем очень простом случае возможный шаблон:
&page-\d+
С \d
означает цифру (числовые символы 0-9) и +
, что означает: Повторите выражение прямо перед +
(здесь: \d
) один или несколько раз. Все остальные персонажи просто представляют себя.
Следовательно, шаблон выше соответствует любой из следующих строк:
&page-0
&page-665
&page-1234567890
Так как функции preg
используют Perl-совместимый синтаксис, а регулярные выражения обозначаются между слэшами (/
) в Perl, вы должны окружить шаблон в косых чертах:
$after = preg_replace('/&page-\d+/', '', $before);
Собственно, вы можете использовать и другие символы:
$after = preg_replace('#&page-\d+#', '', $before);
Полную ссылку на поддерживаемый синтаксис см. в руководстве PHP.