Subject: Re: Processing two documents, which order?
From: Dave Pawson <davep@xxxxxxxxxxxxx>
Date: Sat, 9 Apr 2011 17:47:46 +0100
|
On Sat, 09 Apr 2011 11:55:32 -0400
Liam R E Quin <liam@xxxxxx> wrote:
> On Sat, 2011-04-09 at 08:20 +0100, Dave Pawson wrote:
>
> > I want to say any lc character, AND not( : | -)
>
> since : and - are not lowercase characters, just "any lowercase
> letter" would work... or by AND do you mean "followed by"?
>
> > <xsl:analyze-string select="." regex="[a-z][a-z\--\-\-:]+">
> > works. But I don't know how.
>
> [a-z] is a lower case letter (in ASCII...)
> [a-z \- - \:] allows any character in two ranges:
> (1) a .. z
> (2) - .. :
> using the default collation/sorting sequence, this gives (consulting
> an ASCII or Unicode chart)
> - . / 0123456789 :
I.e. all allowed?
[14] posCharGroup ::= ( charRange |
charClassEsc )+
>
> This therefore matches pastry:36-little-pigs but not flat:pan_cake
> >
> > [a-z-[p]] excepts p from the range a-z
> > Is this connected with my misunderstanding?
>
> It might be, but there are no nested square brackets in your example.
> The stylesheet you appended had the range --- in it, rather than --:
> by the way.
Yet it appears to work as an 'exception' i.e. a negCharGroup?
(see http://www.w3.org/TR/xmlschema-2/#charcter-classes
[16] charClassSub ::= ( posCharGroup |
negCharGroup ) '-' charClassExpr
I think that the charClassExpr should be in brackets.
Still confused.
--
regards
--
Dave Pawson
XSLT XSL-FO FAQ.
http://www.dpawson.co.uk
|