PHP HTML DOM从标记中提取文本,而不在嵌套标记中包含文本
我有以下格式的htmlPHP HTML DOM从标记中提取文本,而不在嵌套标记中包含文本,php,dom,Php,Dom,我有以下格式的html <html> <body> <div> Hello <span>world1 </span> <span>world2 </span> <span>world3 </span&g
<html>
<body>
<div>
Hello
<span>world1
</span>
<span>world2
</span>
<span>world3
</span>
</div>
<div>
Hello
<span>world1
</span>
<span>world2
</span>
<span>world3
</span>
</div>
</body>
</html>
你好
世界1
世界2
世界3
你好
世界1
世界2
世界3
我需要从div中提取数据,但不包括span..中的文本,并将其存储在一个变量中,然后将每个div中第三个span中的文本提取到另一个变量中。
在第一个变量中,我需要Hello。
在第二个变量中,我需要world3。
如何做到这一点。
每个div的nodeValue属性返回包含跨距内的文本。如何避免在div的
childNodes
上迭代,并从属于textNodes的所有childNodes的nodeValue构建一个字符串(它们的nodeType
为3
)我认为您正在寻找类似的内容
我尝试了$div->getElementsByTagName('div')并遍历了每个div并提取了节点值..但它也包括span标记中的文本..我需要避免这样做为什么不比较节点类型^^
document.getElementsByTagName("div")[0].childNodes[0].textContent;
document.getElementsByTagName("div")[0].childNodes[5].textContent;