有一个节点包含以下内容。
<item is_json_array="yes">
<name>Дополнительная услуга Количество IP-адресов - 1 Шт (Размещение сервера 1U #817)</name>
<amount>156.48</amount>
<taxrate>0</taxrate>
<taxamount>0.00</taxamount>
<notaxamount>156.48</notaxamount>
</item>
我需要从name
中撕下仅包含#
符号后数字的子字符串。 817
到字符串的第一个非数字字符或结尾。数字字符可以是任意数量的
由于您使用的是 XSLT 1.0,因此可以使用 substring-after()
和 translate()
的组合来获取#
后的文本,还可以去除任何不需要的字符。
例。。。
<xsl:template match="name">
<xsl:value-of select="translate(substring-after(.,'#'),translate(substring-after(.,'#'),'0123456789',''),'')"/>
</xsl:template>
一个完整的工作示例可以在这里看到:http://xsltfiddle.liberty-development.net/gWcDMes/1