函数normalize-space
删除前导和尾随空格,并将空格字符序列替换为一个空格。在XSLT 1.0中,如何用仅用单个空格替换空白字符序列?例如,"..x.y...\n\t..z."
(为了可读性用点代替空格)应该变成".x.y.z."
。
最佳答案
如果没有Becker的方法,则可以使用一些discouraged字符作为标记:
translate(normalize-space(concat('',.,'')),'','')
注意:三个函数调用...
或使用任何字符,但重复一些表达:
substring(
normalize-space(concat('.',.,'.')),
2,
string-length(normalize-space(concat('.',.,'.'))) - 2
)
在XSLT中,您可以轻松声明一个变量:
<xsl:variable name="vNormalize" select="normalize-space(concat('.',.,'.'))"/>
<xsl:value-of select="susbtring($vNormalize,2,string-length($vNormalize)-2)"/>
关于xslt - 如何将空白序列替换为一个空格,但不修整XSLT?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5035501/