我试图在文档中的任何文本节点中查找特定文本,到目前为止我的语句如下所示:
doc.xpath("//text() = 'Alliance Consulting'") do |node|
...
end
这显然行不通,有人能建议更好的选择吗?
这个表情//text() = 'Alliance Consulting'
评估为布尔值。
对于此测试样本:
<r>
<t>Alliance Consulting</t>
<s>
<p>Test string
<f>Alliance Consulting</f>
</p>
</s>
<z>
Alliance Consulting
<y>
Other string
</y>
</z>
</r>
它会返回true
当然。
您需要的表达式应计算为节点集,因此使用:
//text()[. = 'Alliance Consulting']
例如。表达:
count(//text()[normalize-space() = 'Alliance Consulting'])
违反上述文件将被退回3
.
选择包含以下内容的文本节点'Alliance Consulting'
在整个字符串值中(例如'Alliance Consulting provides great services'
) use:
//text()[contains(.,'Alliance Consulting')]
请注意adjacent解析器到达文档后,文本节点应变为 1。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)