PHP-如何将解析的HTML代码中的href值与href属性值内的特定起始词和结束号匹配?

Kiki FIstrek新

我有一部分解析的HTML代码,例如:

<div class='news_item'><a href='/najnovije/2-597-novih-slucajeva-u-protekla-24-sata-u-bolnicama-ukupno-1-545-osoba/35'><span class='h3'>2.597 novih slučajeva u protekla 24 sata, u bolnicama ukupno 1.545 osoba</span></a>U protekla 24 sata zabilježeno je 2.597 novih slučajeva pa je broj trenutno oboljelih (aktivnih slučajeva) u Hrvatskoj danas 15.513. Među njima je 1.545 pacijenata na bolničkom liječenju, od toga je na respiratoru 178 pacijenata. U protekla 24 sata testirana je 9.681 osoba. <span class='date'>11.11.2020. 10:00</span></div>

我该如何搭配: /najnovije/2-597-novih-slucajeva-u-protekla-24-sata-u-bolnicama-ukupno-1-545-osoba/35

整页URL为https://www.koronavirus.hr/najnovije/34

我尝试了: /<a \bhref\s*=\s*'[^']*najnovije\/.*\/[35]?<\/a>/gm

有了这个,我得到了23场比赛,但是无法以/ 35结束时锁定丢失的比赛:

/<a \bhref\s*=\s*'[^']*najnovije\/.*?<\/a>/gm

但是没有成功。

mega6382

不要使用正则表达式来解析html,而是使用DOMDocument,这是实现此方法的方法(DEMO):

$domDocument = new DOMDocument();
$domDocument->loadXML($string);

$selector = new DOMXPath($domDocument);

foreach ($selector->query("//a[contains(@href, 'najnovije') and contains(@href, '35')]") as $node) {
    var_dump($node->getAttribute('href'));
}

这使用xpath获取具有href包含这些值属性的锚链接

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章