xsl-list
[Top] [All Lists]

Re: Contains - where contained

2004-01-26 04:33:15
Thanks Michael and Andrew very much for your responses.

I think what I probably need to do is get my hands on Michael's book

Regards,

Mark

----- Original Message ----- 
From: "Andrew Welch" <AWelch(_at_)piper-group(_dot_)com>
To: <xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com>
Sent: Monday, January 26, 2004 11:12 AM
Subject: RE: [xsl] Contains - where contained




Is there an easy way to test not only whether one strings 
contains another, but if the position of the contains is at 
the start  of the taret string, at the end or somewhere other 
than  the start and the end.

To test if one string contains another:

test="contains(.,$string) 

To test if one string is at the start of another string:

test="not(string-length(normalize-space(substring-before(.,$string))))"

Combine the two:

test="contains(.,$string) and
not(string-length(normalize-space(substring-before(.,$string))))"

To do what you are asking use a choose/when with the start and end tests
first, and the middle test falling into the otherwise.

You may want to remove the normalize-space() if you would treat "hello"
and " hello" differently.  You probably also would want to translate()
to the same case before comparing as well.

andrew

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


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



<Prev in Thread] Current Thread [Next in Thread>