xsl-list
[Top] [All Lists]

Re: Xpath patern question

2003-03-10 10:19:28
Hi Hélder,

Imagine that I want all elements "campo" with value matching a
determinate patern. For example, I want all elements "campo" whose
value is like "2 digits, a separator("/" or "-"), 2 digits, a
separator("/" or "-"), 4 digits". This is a date!

Try something like:

  /xxx/yyyy/campo[number(substring(., 1, 2)) and
                  (substring(., 2, 1) = '/' or
                   substring(., 2, 1) = '-') and
                  number(substring(., 4, 2)) and
                  (substring(., 2, 1) = '/' or
                   substring(., 2, 1) = '-') and
                  number(substring(., 7, 4))]

This will allow things like " 3/ 7/   4", which you might not want;
you could disallow them by adding a "not(contains(., ' '))" clause.

Note that XPath 2.0 will allow you to use a regular expression here,
so you will be able to do:

  /xxx/yyyy/campo[matches(., '\d{2}[-/]\d{2}[-/]\d{4}')]

Cheers,

Jeni

---
Jeni Tennison
http://www.jenitennison.com/


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list



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