Игнорировать базовую ссылку на preg_match, используя PHP - PullRequest
0 голосов
/ 02 апреля 2012

У меня есть следующий preg_match для замены любых ссылок html на другой URL, который он работает, за исключением того, что он также изменяет значение base_href - я хочу, чтобы он полностью игнорировал значение base href

$message = preg_replace("/href=\"http\:\/\/([a-zA-Z0-9\-]+\.[a-zA-Z0-9]+\.[a-zA-Z]{2,3}(\/*)?)/","href=\"http://www.site.com/system/link_tracker.php?URL=$1&ID={$ID}\"", $message);

Есть идеи, как отредактировать это, чтобы смотреть только на href, а не на базовый href?

1 Ответ

1 голос
/ 02 апреля 2012
$message = preg_replace("/<a([^>]+)href=\"http\:\/\/([a-zA-Z0-9\-]+\.[a-zA-Z0-9]+\.[a-zA-Z]{2,3}(\/*)?)/",
                        "<a$1href=\"http://www.site.com/system/link_tracker.php?URL=$2&ID={$ID}\"", $message);
...