我有一组要解析的 html 项目。我需要解析类名以“uid-g-uid”结尾的 div 的内容。以下是示例 div...
<div class="uid-g-uid">1121</div>
<div class="yskisghuid-g-uid">14234</div>
<div class="kif893jduid-g-uid">114235</div>
我已经尝试了以下组合但没有奏效
$doc = new DOMDocument();
$bdy = 'HTML Content goes here...';
@$doc->loadHTML($bdy);
$xpath = new DomXpath($doc);
$div = $xpath->query('//*[@class=ends-with(., "uid-g-uid")]');
也尝试过
$doc = new DOMDocument();
$bdy = 'HTML Content goes here...';
@$doc->loadHTML($bdy);
$xpath = new DomXpath($doc);
$div = $xpath->query('//*[@class="*uid-g-uid"]');
请帮忙!
最佳答案
ends-with() 需要 Xpath 2.0,因此它不能与 Xpath 1.0 的 DOMXPath 一起使用。 像这样的东西应该可以工作:
$xpath->query('//*["uid-g-uid" = substring(@class, string-length(@class) - 8)]');
关于php - 使用 PHP DOM 解析 HTML - 类包含文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15901584/