如何在特定子元素之前选择元素中的文本

时间:2014-02-15 15:41:42

标签: xslt

在我的xml文档中,我有以下代码。我需要选择仅在<br/>之前出现的文本。怎么做?

<div id='win0divDERIVED_SCC_AD_ADDRESSLONG$0'><span class='PSLONGEDITBOX' id='DERIVED_SCC_AD_ADDRESSLONG$0'>123 Main Street <br />
Boise, ID 83702</span>
</div>

我的意思是我只需要'123 Main Street'而不是'123 Main Street Boise,ID 83702'

有任何线索吗?

2 个答案:

答案 0 :(得分:0)

您可以使用:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="span">
    <xsl:value-of select="text()[1]"/>
</xsl:template>
</xsl:stylesheet>

答案 1 :(得分:0)

//div[@id = 'win0divDERIVED_SCC_AD_ADDRESSLONG$0']/span[@id = 'DERIVED_SCC_AD_ADDRESSLONG$0']/text()[1]应该这样做。