xsl-list
[Top] [All Lists]

Re: [xsl] Recursive function problem

2010-06-30 05:07:41
On Wed, Jun 30, 2010 at 11:00:00AM +0100, David Carlisle wrote:

<xsl:template match="nameGrp">
<xsl:variable name="nameattrs" select="@foreNames,@mainName"/>
<name>
 <xsl:analyze-string select="."
  regex="({string-join($nameattrs,')|(')})">
<xsl:matching-substring>
 <xsl:element name="{
if(regex-group(1)=.) then 'fname'
else 'sname'
}"><xsl:value-of select="."/></xsl:element>
</xsl:matching-substring>
<xsl:non-matching-substring>
<xsl:value-of select="."/>
</xsl:non-matching-substring>
 </xsl:analyze-string>
</name>
</xsl:template>

</xsl:stylesheet>

Yes, that works fine as long as I want to write a template for each 
of the seven elements that I want do this with and handle the fact that
some of them have 8 attributes that need to be modified. Additionally,
I don't know in advance if (in a very contrived example) the name
is going to be something like "Alexander Smith, Alexander Jnr".

cheers

nic

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