On 2 June 2016 at 13:33, Costello, Roger L. costello(_at_)mitre(_dot_)org <
xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com> wrote:
Hi Folks,
I need an XPath expression that returns true if the <MI> element is empty
or, if it's not empty, it contains an uppercase letter of the English
alphabet followed by a period. For example, this <MI> element is good:
<MI></MI>
As is this:
<MI>H.</MI>
This XPath seems to work fine:
if (MI eq '') then true()
else if (exists(MI)) then matches(MI, '^[A-Z]\.$')
else true()
Is there a better (shorter, simpler, more robust) XPath expression?
/Roger
you don't need the if tests, (you almost never need an if test returning
true()
just
MI='' or matches(string(MI), '^[A-Z]\.$')
or if you prefer
matches(string(MI), '^([A-Z]\.)?$')
David
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--