2013-07-03 72 views
0

我有一个网页,是这样的提取标签没有子元素

<p> Content </p> 
........... 
.......... 

<p> Other content  
     <b> Use link <b>  
     <h3> some text <h3> 
</p> 
........... 
........... and some other elements starting with <p> tag having 
different sub-elements inside it 

我想要做的是只提取那些<p>标签这可是没有任何的子元素

回答

1

使用XSLT时,提出的解决方案是正确的。当你标记这只是使用XPath,这里是XPath版本:

//p[count(*) = 0]/text() 
0

的文本您可以使用模板

<xsl:template match="p"> 
    <xsl:if test="count(*) = 0"> 
     <xsl:value-of select="."/> 
</xsl:if> 
</xsl:template> 

只有当节点中没有其他标签时,才会打印p标签的值。

1

只是检查是否有一个,往往快于数:

//p[not(*)]/text()