使用XPath提取字符串的一部分

时间:2013-05-19 14:45:37

标签: xml xslt xpath

我在xml中有以下标记:

<GameESRB> Mature10+ </GameESRB>

我希望使用XPath 1.0和XSLT 1.0获取非小写的所有字符。因此,上述结果字符串将是:

 M10+

我将如何做到这一点?

1 个答案:

答案 0 :(得分:2)

使用GameESRB作为初始上下文节点):

translate(., 'abcdefghijklmnopqrstuvwxyz', '')

基于XSLT的验证

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output method="text"/>

 <xsl:template match="/*">
     <xsl:copy-of select="translate(., 'abcdefghijklmnopqrstuvwxyz', '')"/>
 </xsl:template>
</xsl:stylesheet>

在提供的XML文档上应用此转换时:

<GameESRB> Mature10+ </GameESRB>

评估XPath表达式,并将此评估的结果复制到输出中:

 M10+