Вы точно хотите парсить html регэкспами? Одумайтесь, ведь
может прийти Он.
Как-то так, может?
$doc = new DOMDocument();
$doc->loadHTML($htmlAsString);
$links = $doc->getElementsByTagName('a');
function filterByHref(DOMNodeList $anchors, string $hrefRegex): array {
$links = [];
/** @var DOMElement $elm */
foreach ($anchors as $elm) {
if (! $elm->hasAttribute('href')) {
continue;
}
$link = $elm->getAttribute('href');
if (preg_match($hrefRegex, $link)) {
$links[] = $link;
}
}
return $links;
}
var_export([
'cnt' => $links->length,
'goo' => filterByHref($links, '|^https://google.com\b|'),
'link' => filterByHref($links, '|link1|i'),
], false);