[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: tokenizing and counting with xsl:analyze-string
On Sat, Oct 17, 2020 at 1:22 PM Michael Kay mike@xxxxxxxxxxxx < xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > With xsl:analyse-string you would still need a variable, but it could be a > simpler variable: for example it might just contain a "1" for a match, and > a "0" for a non-match; at the end you then need to count the ones and zeros > which you can do with string-length(translate(...)). > With your suggestion, below mentioned is my new XSLT stylesheet, <xsl:stylesheet version="3.0" xmlns:xsl=" http://www.w3.org/1999/XSL/Transform" xmlns:xs=" http://www.w3.org/2001/XMLSchema" exclude-result-prefixes="xs"> <xsl:output method="xml" indent="yes"/> <xsl:template match="/"> <xsl:variable name="temp_result" as="xs:boolean*"> <xsl:analyze-string select="'abhello1cdehello2fghijklhello3hello4mhello5nhello6'" regex="hello[1-9]"> <xsl:matching-substring> <xsl:value-of select="1"/> </xsl:matching-substring> <xsl:non-matching-substring> <xsl:value-of select="0"/> </xsl:non-matching-substring> </xsl:analyze-string> </xsl:variable> <result> <yes count="{count(index-of($temp_result, true()))}"/> <no count="{count(index-of($temp_result, false()))}"/> </result> </xsl:template> </xsl:stylesheet> The above stylesheet gives me the desired result. But the above mentioned XSLT stylesheet, doesn't do exactly what you've suggested. I would preferably, wish to declare my XSLT variable as follows, <xsl:variable name="temp_result" as="xs:string"> <xsl:analyze-string ... </xsl:variable> with an expectation that, content of this new kind of variable would be a string (i.e, an atomic xs:string value) of 1 s & 0 s characters, on which I could do string-length(translate(...)). Is this doable? -- Regards, Mukul Gandhi
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|