注意:以下内容适用于XSLT 1.0版,它没有date数据类型.如果您的XSLT处理器支持never版本,请使用其中一个内置日期函数.
这取决于你想要推进"验证"的程度.
你可以这样做:
<xsl:if test="
string-length(date) = 8
and translate(date, '0123456789', '') = ''
">
<!-- date looks like it could be valid -->
</xsl:if>
Run Code Online (Sandbox Code Playgroud)
您还可以进行更彻底的检查:
<xsl:if test="
string-length(date) = 8
and translate(date, '0123456789', '') = ''
and number(substring(date, 1, 4)) >= 1970
and number(substring(date, 5, 2)) <= 12
and number(substring(date, 7, 2)) <= 31
">
<!-- date looks like it could really be valid -->
</xsl:if>
Run Code Online (Sandbox Code Playgroud)
但是,后者仍然允许使用20090231.如果要对此进行排除,则调用某种扩展函数可能会变得不可避免.
归档时间: |
|
查看次数: |
13079 次 |
最近记录: |