代码之家  ›  专栏  ›  技术社区  ›  Valeriane

xsl-用另一个字符替换管道

  •  0
  • Valeriane  · 技术社区  · 7 年前

    我使用xslt 2。如何用另一个字符替换管道?

    例如,我有一个这样的元素:

    <list items="A1|A2|A3"/>
    

    我想拥有

    <list items="A1,A2,A3"/>
    

    我试过这样的东西,但没用

    <xsl:variable name="result" select="replace(list/@items, '|', ',')"/>
    

    什么是问题?

    1 回复  |  直到 7 年前
        1
  •  1
  •   michael.hor257k    7 年前

    这个 replace() 函数使用正则表达式-管道字符是正则表达式中的一个特殊字符。要么转义字符:

    <xsl:variable name="result" select="replace(list/@items, '\|', ',')"/>
    

    或使用 translate() 改为函数。