我正在尝试用“-”翻译空白。数据来自TEI-XML
数据:
<m type="base">
<m type="baseForm">A<c type="infix">B</c>CD</m>
</m>
和XSL
文件:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:for-each select="descendant::m[@type='base']/m[@type='baseForm']">
<xsl:choose>
<xsl:when test="current()/c"><xsl:value-of select="current()[not != c[@type['infix']]] |node()"/></xsl:when>
<xsl:otherwise><xsl:value-of select="current()"/></xsl:otherwise>
</xsl:choose>
<!-- my attempt -->
<xsl:value-of select="translate(., ' ','-')"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
按照这篇文章XSL replace space with caret的回答,我已经使用过translate
,但它不起作用。结果应该是:“AB-CD”,但我有“AB CD”。
谢谢你的帮助。