xsl-list
[Top] [All Lists]

Re: [xsl] how to split word into sequence of letters

2012-08-18 01:54:22

That rather depends on the time complexity of substring().

Saxon should evaluate substring() in constant time once it has established that the string contains no surrogate pairs, which is only done once for a given string.

Michael Kay
Saxonica


On 18/08/2012 04:33, Dimitre Novatchev wrote:
On Fri, Aug 17, 2012 at 7:17 PM, Mukul Gandhi 
<gandhi(_dot_)mukul(_at_)gmail(_dot_)com> wrote:
Hi Robby,
     Here's another variant of the solution,

for $x in 1 to string-length($stringVal) return substring($stringVal, $x, 1)

But the solution with string-to-codepoints(..) etc is equally good.

The solution given by Michael Kay:

     for $c in string-to-codepoints($s) return codepoints-to-string($c)

can be much more efficient (linear time complexity) than the above
expression that calculates substring N times. (O(N^2) in the absence
of a good optimizer).


Cheers,
Dimitre.


On Fri, Aug 17, 2012 at 8:04 PM, Robby Pelssers 
<Robby(_dot_)Pelssers(_at_)nxp(_dot_)com> wrote:
Hi guys,

Probably the stupidest question since a while but what would be the preferred 
way to split a word into a sequence of letters  ;-)

Cheers,
Robby



--
Regards,
Mukul Gandhi

--~------------------------------------------------------------------
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>
--~--