首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过纯文本进行SimpleDom搜索

通过纯文本进行SimpleDom搜索
EN

Stack Overflow用户
提问于 2019-11-26 02:45:48
回答 1查看 48关注 0票数 0

我正在使用"PHP简单HTML DOM解析器“库,并期待找到基于其文本值(纯文本)的元素。

例如,我需要使用值"Red“查找span元素。

代码语言:javascript
复制
<span class="color">Red</span>

我期望下面的代码可以工作,但似乎它只是替换了值,而不是搜索它。

代码语言:javascript
复制
$brand = $html->find('span',0)->plaintext='Red';

我阅读了手册,我也试图在库代码本身,但无法找到解决方案,如果我错过了什么,或它只是不可能通过简单的Html DOM解析器。

附注:请注意,我知道其他方式,如正则表达式。

EN

回答 1

Stack Overflow用户

发布于 2019-11-27 02:53:23

使用$html->find('span', 0)将找到第N个跨度,在本例中n为零。

使用$html->find('span',0)->plaintext='Red';会将明文设置为Red

如果要查找文本为Red的元素,可以使用循环并省略0来查找所有跨度。

例如,使用innertext而不是明文:

代码语言:javascript
复制
$spansWithRedText = [];

foreach($html->find('span') as $element) {
    if ($element->innertext === "Red") {
        $spansWithRedText[] = $element;
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59038295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档