Subject: RE: Xslt 2 stripping out non-numbers
From: "Ross, Douglas" <DRoss@xxxxxxxxxx>
Date: Tue, 19 Apr 2005 13:26:17 -0400
|
I use the java hook to call the replaceAll method on the String object.
Then I pass in reg ex to remove unwanted text:
declare namespace:
xmlns:java="java:java.lang.String"
then use replaceAll method:
<xsl:variable name="clean" select="java:replaceAll(string($input),
'[0-9]', '')" />
There may be an easier (non java function) way but this works in Saxon
and Xalan. Note the namespaces may differ.
Douglas Ross
Developer, HTML UI Framework
Kronos
www.kronos.com
-----Original Message-----
From: Jim Neff [mailto:jneff@xxxxxxxxxxxxxxx]
Sent: Tuesday, April 19, 2005 1:23 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Xslt 2 stripping out non-numbers
Greetings,
I need to strip out non-numerical values from a string.
Here is a sample input value: TUV0062
And what I want is : 0062 (or just 62)
Here's what I've tried so far:
for $i in tokenize(state_license_number, '\.') return xs:string( if
(string(number(.)) = 'NaN') then '' else $i)
But this does not work. I get an empty string as a result
If I do this:
for $i in tokenize(state_license_number, '\.') return xs:string($i)
I get the whole string back so I know my "for" statement is returning
something.
What is the correct way to do this using XSLT 2?
Thanks,
Jim
| Current Thread |
|
Ross, Douglas - 19 Apr 2005 17:48:44 -0000 <=
Ross, Douglas - 19 Apr 2005 17:51:21 -0000
Mukul Gandhi - 19 Apr 2005 18:11:07 -0000
|
|