我有一个包含多个元素的XML文件。我正在使用XSLT将每个转换为一个唯一的XML文件。每个人都有一个id属性,我想在文件名中使用,我试图清理属性值。 id全部以capi_开头,有些以_output结尾,因此格式为capi_xxx_yyy_output或capi_xxx_yyy。使用Xpath提取字符串的中间部分
我可以提取capi_后的字符串:
<xsl:for-each select="//section">
<xsl:variable name="cleanId" select="substring-after(@id, '_')" />
从这个新的字符串,我怎么抢_output前的字符串?我试过但它没有工作:
<xsl:for-each select="//section">
<xsl:variable name="cleanId" select="substring-before(substring-after(@id, '_'), '_output')" />
在此先感谢。
因此,对于您的cleanId变量,您是否希望它最终保留值xxx_yyy? –
是的,对不起,应该指定那个。 – bonehelmet