XSLT 1.0
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="aaa">
<ddd>
<xsl:value-of select="substring-before(.,'[')"/>
<dv name="{substring-before(substring-after(.,'['),']')}"/>
</ddd>
</xsl:template>
</xsl:stylesheet>
或者
XSLT 2.0
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="aaa">
<ddd>
<xsl:value-of select="tokenize(.,'\[')[1]"/>
<dv name="{tokenize(tokenize(.,'\[')[2],'\]')[1]}"/>
</ddd>
</xsl:template>
</xsl:stylesheet>
编辑
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output indent="yes"/>
<xsl:strip-space elements="*"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="aaa">
<ddd>
<xsl:apply-templates select="node()|@*"/>
</ddd>
</xsl:template>
<xsl:template match="content|component">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="strong">
<dv name="{normalize-space(.)}"/>
</xsl:template>
</xsl:stylesheet>