xsl-list
[Top] [All Lists]

RE: [xsl] extract values from an attribute, then math division

2006-07-21 04:05:39
In XSLT 2.0, you can extract the numbers with

replace(@result, '^.*\[Total] = ([0-9]*).*$', '$1')

and

replace(@result, '^.*\[Count] = ([0-9]*).*$', '$1')

In XSLT 1.0, use a sequence of calls on substring-after and
substring-before.

A lot depends on quite how flexible you want to be in accepting variations
on this input. If you just want to extract two numbers from a string, and
you know there are spaces around them, you could do

translate($in, 'ABCDE..Zabcde..z:=[]', '')

to get rid of everything except spaces and digits and ".",

then normalize-space(),

then substring-after($in, ' ')
and substring-before($in, ' ')

Michael Kay
http://www.saxonica.com/ 

-----Original Message-----
From: Leslie Young [mailto:xlr8sx(_at_)hotmail(_dot_)com] 
Sent: 21 July 2006 01:57
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] extract values from an attribute, then math division

I need to extract 2 values from an attribute and perform math 
division. For example, define a variable = [Total] / [Count] 
/ 100 from the following Value element.  Any advise how to do it?

<Item name="AAA">
   <Value name="Samples" result="Samples: [Total] = 2000.0 
[Count] = 50" /> </Item>

Thanks in advance!

_________________________________________________________________
Don't just search. Find. Check out the new MSN Search! 
http://search.msn.click-url.com/go/onm00200636ave/direct/01/


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--



--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--