Примеры preg replace
Пример регулярного выражения для многострочного текста
Для правильной работы в многострочном тексте нужно указать модификатор /s который присвоит метасимволу "точка" в шаблоне соответствие всем символам, включая переводы строк.
Пример: вырезать теги xml и то что внутри них:
<?php
$s="Начало <xml>Вырезаемый текст</xml>нужный текст <xml>\nВырезаемый текст</xml> конец";
echo preg_replace("|\<xml[^>]*\>.*?\<\/xml\>|s", '', $s); Выведет: Начало нужный текст конец
Пример: найти все ссылки в коде:
<?php
$t="<p><a href=\"/lnk1.htm\">Анкор 1</a></p><p><a href=\"/lnk2.htm\">Анкор 2</a></p>";
preg_match_all("@.*?\<a href=\"(/[^\"]+)\"\>(.*?)\<\/a\>.*?@su",$t, $res, PREG_SET_ORDER);
print_r($res);
foreach($res as $v) echo "$v[1] - $v[2]".'<br>';Выведет: /lnk1.htm - Анкор 1 /lnk2.htm - Анкор 2
\xnn - шестнадцатеричное число, состоящее из двух цифр.
\unn - шестнадцатеричное число, состоящее из четырех цифр.