想知道你能不能帮我?xml中有节点,如下所示
$LOG: 08880xbpnd $ [医]坐立不安 df 标清 消防处 F 标清 消防处
我想知道是否所有的文本都会转到一行,这样就可以传递到javascript函数了吗?所以结果会是这样
$LOG: 08880xbpnd $fhdsafidsfsddfsdfsdfsdfsd
发布于 2009-02-16 14:35:29
不幸的是, 规范化-空间() 函数(用于andynormancx的答案)不仅仅是删除换行符。
它删除所有前导和尾随空格以及,它用单个空格字符替换任何内部连体空格。
在许多情况下,我们只想删除一种类型的空白字符(如当前的新行(CR+LF解析器将其读取到仅仅LF时会自动标准化)。
正确和安全的方法是使用标准的XPath 翻译() 函数
translate(., '
', '')返回从删除任何换行符的当前节点的字符串值中获得的字符串。
这里是一个示例
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="node()|@*"/>
</xsl:copy>
</xsl:template>
<xsl:template match="text()">
<xsl:value-of
select="translate(.,'
','')"/>
</xsl:template>
</xsl:stylesheet>当将上述转换应用于此源XML文档时,则为。
<t>
$LOG: 08880xbpnd $
"embedded blanks must stay"
df
sd
fsd
f
sd
fsd
</t>结果仅在一行上(视需要而定),所有嵌入的空格都保留完整的。
<t>$LOG: 08880xbpnd $"embedded blanks must stay"dfsdfsdfsdfsd</t>发布于 2009-02-16 09:46:09
规范化-空间() XPath函数应该做您想做的事情。
https://stackoverflow.com/questions/552762
复制相似问题