1)如何使用XSL1.0检查数字变量是否只有4位数。
<xsl:variable name="number" select="0715" />
2)如何使用XSL1.0检查版本变量是否有数字后跟大写
<xsl:variable name="version" select="V1" />
答案 0 :(得分:2)
1)如何使用XSL1.0检查数字变量是否只有4位数。
<xsl:variable name="number" select="0715" />
这是不可能的,因为$ number的值与编写
的值完全相同<xsl:variable name="number" select="715" />
在您测试其存在之前很久,无效的零消失了。所以也许你只想要($number < 10000)
?
另一方面,如果您正在测试字符串恰好包含四位数字,请使用translate($x, '0123456789', '9999999999') = '9999'
。
2)如何使用XSL1.0检查版本变量是否有数字后跟大写
取决于你的意思&#34;关注&#34; - 介于两者之间吗?如果您的意思是“紧跟着&#39;”,那么您可以使用相同的技巧:
translate(substring($x, 1, 1), '0123456789', '9999999999') = '9'
and
translate(substring($x, 2, 1), 'ABCD...XYZ', 'Z') = 'Z'
答案 1 :(得分:1)
使用string-length()
函数确定......以及字符串的长度。
您可以测试:
translate($version, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789', 'AAAAAAAAAAAAAAAAAAAAAAAAAA0000000000') = 'A0'
注意:这会测试单个大写字符后跟一个数字 - IOW,字符串&#34; V1&#34; 传递此测试。
另请注意,您的变量指向名为V1
的元素,而不是指向包含&#34; V1&#34;的字符串。