Subject: Re: Testing for a specific word in a string
From: "Andrew Welch" <andrew.j.welch@xxxxxxxxx>
Date: Wed, 5 Mar 2008 12:22:48 +0000
|
On 05/03/2008, Aaron Johnson <artpunx@xxxxxxxxx> wrote:
> Hi...
>
> I have a set of tests which assign various parameters. Sometimes the
> string values are similar and require the same variable to be used.
>
> <xsl:when test="($tabName = 'Pilot')">pilotTab</xsl:when>
> <xsl:when test="($tabName = 'Pilot 2')">pilotTab</xsl:when>
> <xsl:when test="($tabName = 'Pilot 3')">pilotTab</xsl:when>
>
> Instead of replicating the test over and over, I would like to extend
> the test to check for the word 'pilot' and so do away with repetition.
> I have tried various ways including 'contains' and 'begins-with' but I
> can't get it to work. I also looked at using subString but this seems
> to always require two values....which might work for 'Pilot,*' but not
> for 'Pilot'.
contains($tabName, 'Pilot')
....should work fine - you don't mention why that doesn't work for you?
You might prefer:
'Pilot' = tokenize($tabName, ' ')
if you want match 'Pilot' as a word (and are using 2.0)
--
Andrew Welch
http://andrewjwelch.com
Kernow: http://kernowforsaxon.sf.net/
|