Subject: Re: [xsl] Function to Extract integer from string From: David Carlisle <davidc@xxxxxxxxx> Date: Tue, 24 Oct 2006 14:50:52 +0100 |
BTW, what does "'regex="\d+\.?\d*"' do? \d is a digit so \d+ is one or more digits \. is a . so \.? is 0-or-1 . and \d* is zero or more digits [0-9] also matches digits but with a rather anglo-saxon.ascii view of what constitutes a digit. \d matches any unicode character with the appropriate digit property. Still I doubt that US code of Federal Regulations uses digits from non latin scripts so it probably comes to the same thing in this case <xsl:variable name="all" select="replace(.,'[^ 0-9\.]','')"/> <xsl:variable name="numbers" as="xs:string*"> <xsl:analyze-string select="$all" regex="\d+\.?\d*"> <xsl:matching-substring> <xsl:sequence select="."/> </xsl:matching-substring> </xsl:analyze-string> </xsl:variable> I think that's just giving the sequence of numbers which you could do as <xsl:variable name="numbers" as="xs:string*" select="tokenize(.,'[^0-9\.]+')"/> David
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Camel case tokenizing, Michael Kay | Thread | RE: [xsl] Function to Extract integ, Philip Vallone |
[xsl] Camel case tokenizing, tom tom | Date | Re: [xsl] Camel case tokenizing, David Carlisle |
Month |