[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
[Recent Entries]
[Reply To This Message]
Re: Re: efficiently extracting a capture group from a
You can put the matching pattern in a variable in order to avoid redundancy.
The general solution using analyze-string() won't become any easier I'm
afraid. You need to declare the fn namespace etc.
On 04.06.2022 19:22, Chris Papademetrious
christopher.papademetrious@xxxxxxxxxxxx wrote:
Hi Gerrit, Graydon,
Thanks for having a look!
The tricky part is, I need an empty sequence if the input string does
not comply with pattern. replace() returns the original string for a
non-match. I could address that with a prefilter:
B replace($file[matches(., '/my-(\w+)\.xml$')], '^.+/my-(\w+)\.xml$', '$1')
but I don't like duplicating patterns because they can accidentally
become desynchronized. (If anyone suggests an ENTITY as a solution here,
please see me after class.)
Graydon, I need your solution for obtaining the file basename elsewhere
in my stylesheet -- thank you!! -- but I run into the prefilter
double-pattern issue whether I replace()the full path or just the basename.
And although this example processes a filename, I'd like to find best
generalized way to obtain a capture group (or nothing) for any match
scenario. In perl, I can assign a variable to the result of a regex match:
B my $file = 'path/my-sometype.xml';
B my ($type) = ($file =~ m{my-(\w+)});
and I was hoping for something similar in XQuery.
Thank you everyone! It's nice to be able to group-think through this.
- Chris
XSL-List info and archive
<https://urldefense.com/v3/__http:/www.mulberrytech.com/xsl/xsl-list__;!!A4F2R9G_pg!YXd556WaLkP4pGQ6edPoLq22GVZWXz0FWKC8B6fG3pWIEv49hMn2JEHevovei-DY16w5mb_F-bFG4sPyBrcYYJwk3mBc3dJ69yblgscpjoSpFqlrlsgk$>
EasyUnsubscribe
<https://urldefense.com/v3/__http:/lists.mulberrytech.com/unsub/xsl-list/3380743__;!!A4F2R9G_pg!YXd556WaLkP4pGQ6edPoLq22GVZWXz0FWKC8B6fG3pWIEv49hMn2JEHevovei-DY16w5mb_F-bFG4sPyBrcYYJwk3mBc3dJ69yblgscpjoSpFguJxHbP$>
(by email)
XSL-List info and archive <http://www.mulberrytech.com/xsl/xsl-list>
EasyUnsubscribe <http://lists.mulberrytech.com/unsub/xsl-list/225679>
(by email <>)
--
Gerrit Imsieke
GeschC$ftsfC<hrer / Managing Director
le-tex publishing services GmbH
Weissenfelser Str. 84, 04229 Leipzig, Germany
Phone +49 341 355356 110, Fax +49 341 355356 510
gerrit.imsieke@xxxxxxxxx, http://www.le-tex.de
Registergericht / Commercial Register: Amtsgericht Leipzig
Registernummer / Registration Number: HRB 24930
GeschC$ftsfC<hrer / Managing Directors:
Gerrit Imsieke, Svea Jelonek, Thomas Schmidt
|
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
RSS 2.0 |
|
Atom 0.3 |
|
|