程序設計語言(如java
,C#
,python
等)具有date/time/datetime
類型。
date
可以通過構造函數創建,如果您提供有效的參數。
如果不是,它將產品exception
可以捕獲(通常try...catch
聲明)。
使用regex
很難驗證29/2/2012
和29/2/2013
。
但在date
語言類型的幫助下很容易。
$ python
>>> import time
>>> time.strptime('29/2/2012', '%d/%m/%Y')
time.struct_time(tm_year=2012, tm_mon=2, tm_mday=29, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=60, tm_isdst=-1)
>>> time.strptime('29/2/2013', '%d/%m/%Y')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.2/_strptime.py", line 482, in _strptime_time
tt = _strptime(data_string, format)[0]
File "/usr/lib/python3.2/_strptime.py", line 459, in _strptime
datetime_date(year, 1, 1).toordinal() + 1
ValueError: day is out of range for month
來源
2011-12-17 16:20:14
kev
爲什麼不把兩者分開? – 2011-12-17 15:04:12
你在用什麼語言?數字比較是RegEx最好的選擇。 – FakeRainBrigand 2011-12-17 15:07:43
@FakeRainBrigand我正在使用javascript(maskedinput.js)[點擊此處查看頁面](http://digitalbush.com/projects/masked-input-plugin/) – Steve 2011-12-17 15:09:07