Subject: Re: [xsl] efficiently extracting a capture group from analyze-string() From: "Graydon graydon@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Sat, 4 Jun 2022 16:23:04 -0000 |
On Sat, Jun 04, 2022 at 03:30:03PM -0000, Chris Papademetrious christopher.papademetrious@xxxxxxxxxxxx scripsit: > Hi everyone! > > Given some filename string like > > <xsl:variable name="file" select="'path/my-sometype.xml'"/> > > Ibd like to extract the bmy-(\w+)b part of the filename using analyze-string(). I would recommend against trying to do this with general application of a single regular expression. If you only want something that starts with 'my-' and you're confident no other path component has 'my-' in it, it'd be: tokenize($file,'/')[starts-with(.,'my-')] possibly tokenize($file,'/')[matches(.,'my-','i')] if you're not sure it's exactly 'my-'. Or, classically, tokenize($file,system-property('file.separator'))[last()] or if your processor gives you access to the file EXPath module ( http://expath.org/spec/file ) it's modernly file:name($file) Standard and library functions always have better test cases; use them if you can. -- Graydon Saunders | graydonish@xxxxxxxxx CC&s oferC)ode, C0isses swC! mC&g. -- Deor ("That passed, so may this.")
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] efficiently extracting a , Imsieke, Gerrit, le- | Thread | Re: [xsl] efficiently extracting a , Graydon graydon@xxxx |
Re: [xsl] efficiently extracting a , Imsieke, Gerrit, le- | Date | Re: [xsl] efficiently extracting a , Graydon graydon@xxxx |
Month |