首页 > 解决方案 > XSL - 用另一个字符替换管道

问题描述

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

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

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

我希望有

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

我尝试了这样的事情,但没有工作

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

什么是问题?

标签: xsltxslt-2.0oxygenxml

解决方案


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

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

或改用该translate()功能。


推荐阅读