Я вообще не вижу preg_replace, он просто выглядит для меня китайцем, так или иначе мне просто нужно удалить « &page-X
» из строки, если она есть.
X
– это, конечно, конечно, если у кого есть ссылка на полезный учебник preg_replace
для начинающих, который также будет полезен!
На самом деле основной синтаксис регулярных выражений, поддерживаемый 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 .
preg_replace
использует Perl-Compatible Regular Expression для шаблона поиска. Попробуйте этот шаблон:
preg_replace('/&page-\d+/', '', $str)
Дополнительную информацию см. В синтаксисе шаблона .
$outputstring = preg_replace('/&page-\d+/', "", $inputstring);
preg_replace ()
preg_replace('/&page-\d+/', '', $string)
Полезная информация:
Использование регулярных выражений с PHP
http://articles.sitepoint.com/article/regular-expressions-php