簡體   English   中英

需要XSD日期格式

[英]XSD date format required

在XSD中,我想使用正則表達式驗證MM / DD / YYYY中的日期格式。 目前,我正在使用以下語法,這些語法在YYYY-DD-MM中給我輸出。

<xs:simpleType name="dateVal"> <xs:restriction base="xs:string"> <xs:pattern value="(19|20)((([02468][48]|[13579][26])-0?2-29)|\d\d-((0?[469]|11)-([012]?\d|3‌​0)|(l)-([012]?\d|3[01])|(0?2-([01]?\d|2[0-8]))))"></xs:pattern> </xs:restriction> </xs:simpleType>

誰能幫助我更正MM / DD / YYYY。 先感謝您。

嘗試這個:

<xsd:simpleType name="Date">
   <xsd:restriction base="xsd:string">
     <xsd:pattern value="^(?:(?:31(\/|-|\.)(?:0?[13578]|1[02]))\1|(?:(?:29|30)(\/|-|\.)(?:0?[1,3-9]|1[0-2])\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:29(\/|-|\.)0?2\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:0?[1-9]|1\d|2[0-8])(\/|-|\.)(?:(?:0?[1-9])|(?:1[0-2]))\4(?:(?:1[6-9]|[2-9]\d)?\d{2})$"/>
   </xsd:restriction>
</xsd:simpleType>

此正則表達式模式將與日期格式MM / DD / YYYY匹配。

^([0]\d|[1][0-2])\/([0-2]\d|[3][0-1])\/([2][01]|[1][6-9])\d{2}(\s([0-1]\d|[2][0-3])(\:[0-5]\d){1,2})?$

這里的工作示例。

正如評論中指出的那樣,這不適用於XSD模式。 刪除錨點和/字符的錯誤轉義會導致:

([0]\d|[1][0-2])/([0-2]\d|[3][0-1])/([2][01]|[1][6-9])\d{2}(\s([0-1]\d|[2][0-3])(\:[0-5]\d){1,2})?

此外,請看一下: 匹配有效日期的正則表達式

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM