$re = '@(<a href="(?!мой сайт).+">(.+)</a>)@u';
$str = '<a href="мой сайт/contacts">сcылка на мой сайт</a>.
И ссылки вида <a href="не мой сайт">Чужой</a>.
Так вот необходимо ссылки <a href="не мой сайт">Чужой</a>, заменить например на <b>Чужой</b>. Учитывая, что
';
$subst = "<b>$2<b>";
$result = preg_replace($re, $subst, $str);
echo "The result of the substitution is ".$result;
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php