• xslt中substring 函数的用法


    1.函数定义

    string substring(string, number, number?)

    2.xslt中substring 函数功能

    返回第一个参数中从第二个参数指定的位置开始、第三个参数指定的长度的子字符串。长度下标从1开始。

    注意:

    该字符串中的每个字符都被认为具有数字位置:第一个字符的位置是 1,第二个字符的位置是 2,依此类推。

    如果未指定第三个参数,将返回从第二个参数指定的位置开始直到字符串结尾的子字符串。

    如果参数不是字符串类型,将先使用 string() 函数转换为字符串,然后计算该转换的结果。

    此函数区分大小写。

    小示例:

    (1)substring("12345",2,3)   返回:234
    (2)substring("12345",2)     返回:2345

    返回的子字符串包含如下字符:字符位置大于或等于第二个参数的舍入值,且如果指定了第三个参数,小于第二个和第三个参数的舍入值之和。上面使用的比较和加法遵循 IEEE 754 标准规则;如同调用 round() 函数一样进行舍入。

    下列示例阐释异常情况。

    substring("12345", 1.5, 2.6) 返回“234

    substring("12345", 0, 3) 返回“12

    substring("12345", 0 div 0, 3) 返回 ""

    substring("12345", 1, 0 div 0) 返回 ""

    substring("12345", -42, 1 div 0) 返回 "12345"

    substring("12345", -1 div 0, 1 div 0) 返回 ""


    演示 substring() 表达式

    XSLT 文件 (substring.xsl)

    <?xml version='1.0'?>
    <xsl:stylesheet version="1.0"
          xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    
    <xsl:template match="/">
       substring("12345",2,3) = 
          <xsl:value-of select='substring("12345",2,3)'/><br/>
       substring("12345",2) = 
          <xsl:value-of select='substring("12345",2)'/><br/>
       substring("12345", 1.5, 2.6) = 
          <xsl:value-of select='substring("12345", 1.5, 2.6)'/><br/>
       substring("12345", 0, 3) = 
          <xsl:value-of select='substring("12345", 0, 3)'/><br/>
       substring("12345", 0 div 0, 3) = 
          <xsl:value-of select='substring("12345", 0 div 0, 3)'/><br/>
       substring("12345", 1, 0 div 0) = 
          <xsl:value-of select='substring("12345", 1, 0 div 0)'/><br/>
       substring("12345", -42, 1 div 0) = 
          <xsl:value-of select='substring("12345", -42, 1 div 0)'/><br/>
       substring("12345", -1 div 0, 1 div 0) = 
          <xsl:value-of select='substring("12345", -1 div 0, 1 div 0)'/>
    </xsl:template>
    
    </xsl:stylesheet>

    格式化输出:

    格式化输出

    substring("12345",2,3) = 234 substring("12345",2) = 2345 substring("12345", 1.5, 2.6) = 234 substring("12345", 0, 3) = 12 substring("12345", 0 div 0, 3) = substring("12345", 1, 0 div 0) = substring("12345", -42, 1 div 0) = 12345 substring("12345", -1 div 0, 1 div 0) =

     

    处理器输出XML

    <?xml version="1.0" ?>   substring("12345",2,3) =       234<br />   substring("12345",2) =       2345<br />   substring("12345", 1.5, 2.6) =       234<br />   substring("12345", 0, 3) =       12<br />   substring("12345", 0 div 0, 3) =       <br />   substring("12345", 1, 0 div 0) =       <br />   substring("12345", -42, 1 div 0) =       12345<br />   substring("12345", -1 div 0, 1 div 0) =

    参考地址:
    微软官网MSDN的XPath的地址
    https://msdn.microsoft.com/zh-cn/library/ms256180%28v=vs.80%29.aspx





  • 相关阅读:
    动态规划总结(01背包 完全背包 多重背包)
    HDOJ(HDU).2844 Coins (DP 多重背包+二进制优化)
    HDOJ(HDU).1059 Dividing(DP 多重背包+二进制优化)
    HDOJ(HDU).2191. 悼念512汶川大地震遇难同胞――珍惜现在,感恩生活 (DP 多重背包+二进制优化)
    HDOJ(HDU).2159 FATE (DP 带个数限制的完全背包)
    HDOJ(HDU).4508 湫湫系列故事――减肥记I (DP 完全背包)
    HDOJ(HDU).1284 钱币兑换问题 (DP 完全背包)
    HDOJ(HDU).1114 Piggy-Bank (DP 完全背包)
    HDOJ(HDU).3466 Dividing coins ( DP 01背包 无后效性的理解)
    POJ.3624 Charm Bracelet(DP 01背包)
  • 原文地址:https://www.cnblogs.com/wangqiideal/p/4580387.html
Copyright © 2020-2023  润新知