日期字串合法性js校驗

2021-04-27 23:30:50 字數 1730 閱讀 1710

/* @version 1.0.2009.05.13 */

/* @auther heroying */

/* email:[email protected] */

/* isvaliddate(date)方法

日期字串有效性檢測函式

日期字串的有效性指日期字串是否符合特定格式(本函式預設為yyyymmdd)

以及是否是有效真實正確的日期。 

例如:20090100即為非法日期。

返回boolean值,true-格式合法,false-格式非法。

引數:date

yyyymmdd格式的日期字串

示例:var target = isvaliddate('20090100');

alert(target);

*/function isvaliddate(date)

var reg = /^/d(0[1-9]|1[0-2])(0[1-9]|[12][0-9]|3[0-9])$/; //日期字串只允許數字且在該範圍。

var r1 = date.match(reg);

if(r1==null)

var syear = sdate.substring(0,4);

var smonth = sdate.substring(4,6);

var sdate = sdate.substring(6,8); 

var iyear = parseint(syear,10);

var imonth = parseint(smonth,10)-1;

var idate = parseint(sdate,10);

var targetdate = new date(iyear,imonth,idate);

if(iyear!=targetdate.getyear()||imonth!=targetdate.getmonth()||idate!=targetdate.getdate())

alert(date+" 格式合法。");

return true;

}//--------------end ---------------------

返回由字串轉換得到的整數。

parseint(numstring, [radix])

引數numstring

必選項。要轉換為數字的字串。

radix

可選項。在 2 和 36 之間的表示 numstring 所儲存數字的進製的值。如果沒有提供,則字首為 '0x' 的字串被當作十六進製制,字首為 '0' 的字串被當作八進位制。所有其它字串都被當作是十進位制的。

說明parseint方法返回與儲存在 numstring 中的數字值相等的整數。如果 numstring 的字首不能解釋為整數,則返回nan(而不是數字)。

parseint("abc")//返回nanparseint("12abc")//返回12
可以用isnan方法檢測nan

用shell進行日期合法性校驗

此為乙個shell函式 日期為外部引數傳入,此函式只適用於yyyymmdd格式的日期校驗 return 1 就說明校驗錯誤,return 0 則校驗成功 datetest 求輸入引數的長度 if charnum ne 8 then return 1 fiif echo in workdate gre...

Oracle判斷字串合法性

oracle實際應用中經常碰到字元有效性判斷。校驗單個字元是否為字母 數字 符號都比較容易,oracle提供的函式regexp like使用正規表示式就可以完成。但是漢字就比較特殊,需要特別處理。1 判斷字元是否為數字,v char為待校驗字元 單個 regexp like v char,0 9 2...

校驗xml的合法性

方法一 通過dtd 檔案方法二 通過xsd 檔案最後選用了方法二,原因如下 xml schema 可針對未來的需求進行擴充套件 xml schema 更完善,功能更強大 xml schema 基於 xml 編寫 xml schema 支援資料型別 xml schema 支援命名空間 太官方的理由。我...