我有以下div:
<div class="myclass"><strong><a rel="nofollow noopener" href="some link">dynamic content</a></strong></div>
我只想获得dynamic content
锚文本。
到目前为止,我已经尝试使用preg_match_all
:
"'<div class=\"myclass\">(.*?)</div>'si"
返回所有div内容。
我尝试将其与:
"|<a.*(?=href=\"([^\"]*)\")[^>]*>([^<]*)</a>|i"
返回锚文本,但我无法使其工作
有人可以帮忙吗?
谢谢
答案 0 :(得分:2)
您可以使用DOMDocument
代替preg_match_all
$html = '<div class="myclass"><strong><a rel="nofollow noopener" href="some link">dynamic content</a></strong></div>';
$dom = new DOMDocument();
@$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
$query = './/div[@class="myclass"]/strong/a';
$nodes = $xpath->query($query);
echo $nodes[0]->textContent;