在PHP中,我希望得到包含给定文本的所有DOMElement
。
我在DOMText
时获得$xpath->query("//text()[contains(., 'My String')]")
,但我必须执行哪个查询来获取DOMElement
?
答案 0 :(得分:4)
使用强>:
(//*[text()
[contains(., 'My String')]
]
)[1]
这将选择XML文档中具有包含字符串"My String"
的文本节点子项的第一个元素。
如果保证只存在一个这样的元素,则上述表达式可以简化为:
//*[text()
[contains(., 'My String')]
]
如果您要查找的元素只保证有一个文本节点子元素,则此表达式可以简化为:
(//*[contains(., 'My String')])[1]
分别为:
//*[contains(., 'My String')]
答案 1 :(得分:1)
尝试//text()[contains(., 'My String')]/..
之类的路径。