Re: String Match

Subject: Re: String Match
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 22 Dec 1999 10:46:48 GMT


<xsl:template match="//div3//li">
     <xsl:if test="contains(. , 'ILe')">
          <xsl:copy-of select='ancestor::div3'/>
     </xsl:if>
</xsl:template>


If you want to copy from div3, why are you going down to li and then
coming back up? Also as discussed on this list last week starting a
match with // is almost never what you want to do (it almost never makes
any difference, and probably just avoids any optimisations the system
has for simple matches)

It looks like you want to match on any div3 that has an li descendent
with text value ILe

so that would be


<xsl:template match="div3[.//li[contains(.,'Ile')]]">
          <xsl:copy-of select="."/>
</xsl:template>


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread