Colin has mentioned the x flag (which allows you to add ignored white
space, also, since you are using xsl:analyze-string, the regex is an
attribute value template so you can define the regexp parts separately
and drop them in using {}.
For example this monster regex that matches tags in hmlparse
regex="<(/?){$d:elem}\s*(({$d:attr})*)(/?)>|{$d:comment}|{$d:pi}|{$d:doctype}|{$d:cdata}|({$d:msif})">
the regex that match each type of markup are in separate variables for
readability, they are only used once, in this expression.
<xsl:variable name="d:attr"
select="'(\i\c*)\s*(=\s*("[^"]*"|''[^'']*''|\c+))?\s*'"/>
<xsl:variable name="d:elem"
select="'(\i\c*)'"/>
<xsl:variable name="d:comment"
select="'<!\-\-[^\-]*(\-[^\-]+)*\-\->'"/>
<xsl:variable name="d:pi"
select="'<\?\i\c*[^>]*>'"/>
<xsl:variable name="d:doctype"
select="'<!D[^\[<>]*(\[[^\]]*\])?>'"/>
<xsl:variable name="d:msif"
select="'<!\[(end)?if.*?\]>'"/>
<xsl:variable name="d:cdata"
select="'<!\[CDATA(.|\s)*\]\]>'"/>
David
________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England and Wales
with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.
This e-mail has been scanned for all viruses by Star. The service is powered by
MessageLabs.
________________________________________________________________________
--~------------------------------------------------------------------
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>
--~--