在我的环境中我打两个电话来获取来自不同组织的帐户详细信息,并且两个组织都返回帐户详细信息,但是他们在accountNumber中添加了额外的前导零,所以当我比较请求和响应帐号时,我的代码失败了,有没有办法使用xslt从xml下面删除多余的零。
*,
*::before,
*::after {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
html,
body {
margin: 0;
padding: 0;
height: 100%;
}
.container {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
}
.container .fixed {
position: fixed;
width: 100%;
background: aquamarine;
z-index: 2;
}
.container .fixed button {
display: block;
padding: 1em;
border-radius: 5px;
box-shadow: none;
border: 0;
background: #d7d7d7;
}
.container .fixed .appended {
padding: 1em;
background: #fff;
border: 1px solid blue;
margin-bottom: 1em;
}
.container .fill {
width: 100%;
background: orange;
flex: 1;
}
谢谢,
答案 0 :(得分:2)
您可以使用format-number
功能,如下所示:
<xsl:value-of select="format-number(.//accountNumber, '#')"/>
结果:
111118800
答案 1 :(得分:0)
在XSLT 2或更高版本中,您可以在replace(., '^0+', '')
的上下文中使用xsl:template match="accountNumber"
来删除包含字符串操作的前导零(http://xsltfiddle.liberty-development.net/3Nqn5Y3/1),或者您可以使用xs:integer(.)
删除通过将元素内的值转换为整数(http://xsltfiddle.liberty-development.net/3Nqn5Y3)来获得前导零。