xsl-list
[Top] [All Lists]

Re: [xsl] Return the string that matches earliest -- Got a slick XPath expression that solves this?

2013-11-24 13:02:53
Actually a little bit shorter (and correctly including prefixes) (and,
of course, this is XPath 3.0):

   ('bQc', 'Qc')
    [string-length(substring-before('aabQc', .))
    =
     min((('bQc', 'Qc')!(string-length(substring-before('aabQc', .)))))
     ]


To explain this in English:

From all the LHS strings

Get those that are contained in the sentential string

and whose distance to the start of the sentential string

is equal to the

minimum distance (of any of the contained LHS strings) to the start of
the sentential string.

Also, I thought that all LHS strings are presumed to be contained in
the sentential string. If not, then use this expresson:

('bQc', 'Qc')[contains('aabQc', .)]
    [string-length(substring-before('aabQc', .))
    =
     min((('bQc', 'Qc')[contains('aabQc',
.)]!(string-length(substring-before('aabQc', .)))))
     ]

On Sun, Nov 24, 2013 at 10:47 AM, Dimitre Novatchev
<dnovatchev(_at_)gmail(_dot_)com> wrote:
On Sun, Nov 24, 2013 at 9:32 AM, Costello, Roger L. 
<costello(_at_)mitre(_dot_)org> wrote:
aabQc

What about:

   ('bQc', 'Qc')
       [string-length(substring-before('aabQc', .))
    =
       min((('bQc', 'Qc')!(string-length(substring-before('aabQc',
.))))[. gt 0])
       ]


--
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
To avoid situations in which you might make mistakes may be the
biggest mistake of all
------------------------------------
Quality means doing it right when no one is looking.
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play
-------------------------------------
To achieve the impossible dream, try going to sleep.
-------------------------------------
Facts do not cease to exist because they are ignored.
-------------------------------------
Typing monkeys will write all Shakespeare's works in 200yrs.Will they
write all patents, too? :)
-------------------------------------
I finally figured out the only reason to be alive is to enjoy it.



-- 
Cheers,
Dimitre Novatchev
---------------------------------------
Truly great madness cannot be achieved without significant intelligence.
---------------------------------------
To invent, you need a good imagination and a pile of junk
-------------------------------------
Never fight an inanimate object
-------------------------------------
To avoid situations in which you might make mistakes may be the
biggest mistake of all
------------------------------------
Quality means doing it right when no one is looking.
-------------------------------------
You've achieved success in your field when you don't know whether what
you're doing is work or play
-------------------------------------
To achieve the impossible dream, try going to sleep.
-------------------------------------
Facts do not cease to exist because they are ignored.
-------------------------------------
Typing monkeys will write all Shakespeare's works in 200yrs.Will they
write all patents, too? :)
-------------------------------------
I finally figured out the only reason to be alive is to enjoy it.

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

<Prev in Thread] Current Thread [Next in Thread>