PHP HTML DOM从标记中提取文本而不包括嵌套标记中的文本

时间:2013-02-12 08:19:31

标签: php dom

我有以下格式的HTML

<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>

我需要从div中提取数据而不在span中包含文本..并将其存储在变量中,并在另一个变量中的每个div内的第三个span内提取文本。 即。在第一个变量我需要你好。 在第二个变量中我需要world3。 怎么做 。 每个div的nodeValue属性返回包含内部跨度的文本。如何避免

2 个答案:

答案 0 :(得分:1)

遍历div的childNodes,并从textNodes的所有childNode的nodeValues构建一个字符串(它们的nodeType3

答案 1 :(得分:0)

我认为你正在寻找这样的东西。 fiddle

document.getElementsByTagName("div")[0].childNodes[0].textContent;
document.getElementsByTagName("div")[0].childNodes[5].textContent;