Php 获取所有锚定标签
你好 我的正则表达式非常糟糕,我想在我的项目上寻求帮助 我有我从其他网站抓取的内容,我想得到所有锚标签,其中有这个字符串Php 获取所有锚定标签,php,preg-match,preg-match-all,Php,Preg Match,Preg Match All,你好 我的正则表达式非常糟糕,我想在我的项目上寻求帮助 我有我从其他网站抓取的内容,我想得到所有锚标签,其中有这个字符串 target="_blank" 我将如何做到这一点?如有任何建议,将不胜感激 谢谢正如评论中提到的,正则表达式不是这里的答案 使用DOM和XPath实现您想要的功能 $doc = new DOMDocument; $doc->loadHTMLFile('http://www.example.com/some-file.html'); $xpath = new DOM
target="_blank"
我将如何做到这一点?如有任何建议,将不胜感激
谢谢正如评论中提到的,正则表达式不是这里的答案 使用DOM和XPath实现您想要的功能
$doc = new DOMDocument;
$doc->loadHTMLFile('http://www.example.com/some-file.html');
$xpath = new DOMXPath($doc);
$anchors = $xpath->query('//a[@target="_blank"]');
同意@quentin,但是你可以使用regexr,所有锚定标记的基本regex是
,你可以在适合特定模板的HTML上使用它,但对于“从其他站点爬网的内容”来说,它是不安全的。我有一个适合特定模板的HTML。感谢您的快速响应。可能需要将DOMXPath::query()
的返回值分配给那里的某些内容
$dom = new DOMDocument();
$dom->loadHtml($yourCobtent);
$xpath = new DOMXpath($dom);
$yourAnchors = $xpath->query('//a[@target="_blank"]');