可以定义一个xpath表达式,用于选择带有带连字符的文本但没有子HTML标签的<p>元素吗?</p>

时间:2010-10-31 22:57:36

标签: xpath

是否可以定义一个xpath表达式,选择在文本中包含连字符但没有子html标签的所有<p></p>元素。

换句话说,这将由xpath表达式

选择
<p>Wednesday - Chess at Higgins Stadium</p>

但由于子<b>标签,会被排除

<p><b>Wednesday</b> - Chess at Higgins Stadium</p> 

这将被排除,因为子<br/>代码:

<p><br/>Wednesday - Chess at Higgins Stadium</p> 

1 个答案:

答案 0 :(得分:3)

此XPath表达式选择仅具有一个节点子节点的所有p元素作为包含-字符的文本节点:

//p[not(node()[2])][contains(text(),'-')]

//p[count(node())=1][contains(text(),'-')]