Subject: Re: [xsl] Need an XPath expression which returns all xs:pattern elements containing a regex that permits an unbounded number of characters From: "Willem Van Lishout willemvanlishout@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Thu, 4 Apr 2024 13:48:34 -0000 |
Is this even possible, theoretically speaking? As soon as you start using lookaheads, square brackets, and so on, your patterns will likely fail. I don't think regex can parse regex. On 4 Apr 2024, 20:15, at 20:15, "David Carlisle d.p.carlisle@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: >On Thu, 4 Apr 2024 at 13:29, Roger L Costello costello@xxxxxxxxx < >xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> wrote: > >> Hi Folks, >> >> I want to find, in an XML Schema, all xs:pattern elements containing >a >> regex that permits an unbounded number of characters. >> >> Here are examples of xs:pattern elements that I want to find: >> >> <xs:pattern value="A*"/> >> <xs:pattern value="A+"/> >> <xs:pattern value="A{0,.}"/> >> <xs:pattern value="A{1,.}"/> >> >> >> How to fix my XPath expression? Is the solution to add a second >predicate: >> >> xs:pattern[ >> contains(@value, '*') or >> contains(@value, '+') or >> contains(@value, '{1,}') or >> contains(@value, '{0,}') >> ][ >> not(contains(@value, '\*')) and >> not(contains(@value, '\+')) >> ] >> >> Is that correct? >> >> >No. > >A pattern \\* matches an unbounded list of backslashes but fails >your >test as it contains \* >A pattern X{5,} matches an unbounded list of X of at least 5 but >doesn't >match your first predicate.
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Need an XPath expression , David Carlisle d.p.c | Thread | Re: [xsl] Need an XPath expression , Piez, Wendell A. (Fe |
Re: [xsl] Need an XPath expression , David Carlisle d.p.c | Date | Re: Re: [xsl] Need an XPath express, Edward Porter edward |
Month |