我正在想辦法在 Altva Mapforce 中驗證我的輸入日期,格式為“YYYYMMDD”。
我知道要驗證我可以使用的年份,[0-9]{4}但我無法找到一種將日期范圍“限制”為“01-31”和將月份“限制為”01-12 的方法。請注意“01”有效而“1”無效。
有人可以提供一個正則運算式來驗證這種輸入嗎?
從互聯網上搜索我一個月得到了一個:([1-9]|[12]\d|3[01])但是這個對范圍 1-31 有效。我想要 01-31 等等。
uj5u.com熱心網友回復:
對于從 1 到 12 的一個月,為一位數 1 到 9 添加零:
(?:0[1-9]|1[012])
對于第 1-31 天,為一位數 1-9 添加零:
(?:0[1-9]|[12]\d|3[01])
將它們與 4 位數字放在一起以匹配年份(請注意,\d{4}也可以匹配 0000 和 9999),括在單詞邊界中\b以防止與前導或尾隨數字/單詞字符部分匹配:
\b\d{4}(?:0[1-9]|1[012])(?:0[1-9]|[12]\d|3[01])\b
一種變體,將一年的范圍限制為例如 1900 - 2099
\b(?:19|20)\d{2}(?:0[1-9]|1[012])(?:0[1-9]|[12]\d|3[01])\b
但請注意,這不會驗證日期本身,例如它也可以匹配20210231. 要驗證日期,請使用指定的 api 來處理工具或代碼中的日期。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/314394.html
下一篇:我如何從行中獲取href
