我正在研究一种模式,并希望将道布在1970年01月1日至2000年12月31日期间的限制包括在内。
我下面的代码是:
xs:element name="DOB">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="([0][1-9]|1[0-2])/(0[1-9]|[12][0-9]|3[01])/(199[0-9]|200[0-9]|201[01])"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
我得到了这个验证错误:
错误:元素‘道布’:面‘模式’值'2/3/1981‘不被模式'(|10-2)/(01-9|12|301)/(1990-9|2000-9|20101)'.所接受
发布于 2019-03-18 13:53:52
尝试将日期和月份的第一个数字设为可选的,如果该日期或月份为1-9:
<xs:pattern value="(0?[1-9]|1[0-2])/(0?[1-9]|[12][0-9]|3[01])/(19[7-9][0-9]|2000)"/>
除此之外,你的模式捕捉这些年也有问题。我使用以下模式来匹配从1970年1月1日至2000年12月31日的所有年份:
(19[7-9][0-9]|2000)
https://stackoverflow.com/questions/55222928
复制相似问题