XML
<block4>
<tag>
<name>50K</name>
<value>
0501/045788775099
Praveen // name will come
MENENDEZ Y PELAYOA CORUNA SPA // address will come
</value>
</tag>
</block4>
Run Code Online (Sandbox Code Playgroud)
我为这个上面的标签写了一个xslt,但是我面临一个问题,用空格替换剩余长度你可以在中间线看到上面的值praveen让我们假设这个xml消息praveen我们收到了另一个消息我们可能是接收汤姆,但最大长度是35 所以我们需要计算字符串名称值剩余长度我们应该用SPACE替换所以我不知道如何替换那里的空间...
XSL
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" />
<xsl:template match="/">
<xsl:for-each select ="block4/tag[name = '50K']">
<xsl:value-of select="concat(substring(value, 1, 5), ',',substring(substring- before(value,' '),6), ',',substring-after(value,' '))" />
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
预计OUPUT lIKE:
0501 /,045788775099,praveen ............................ MENENDEZ Y PELAYOA CORUNA SPA
点代表空间不要假设点
我需要那里的空间假设认为praveen是7个字符,剩下的28个字符应该在xslt中创建空间
Dan*_*npe 13
尝试使用
<xsl:text> </xsl:text>
Run Code Online (Sandbox Code Playgroud)
空间位于这些标签之间.
有关更多信息:XSLT控制空白
归档时间: |
|
查看次数: |
26454 次 |
最近记录: |