1. 程式人生 > >javascript常用資料驗證函式

javascript常用資料驗證函式

正則表示式日期驗證函式
function CheckDate(str){
      //在JavaScript中,正則表示式只能使用"/"開頭和結束,不能使用雙引號
       var Expression=/^((((1[6-9]|[2-9]\d)\d{2})(\/|\-)(0?[13578]|1[02])(\/|\-)(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2}) (\/|\-)(0?[13456789]|1[012])(\/|\-)(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})(\/|\-)0?2(\/|\-)(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$/; 
       var objExp=new RegExp(Expression);
       if(objExp.test(str)==true){
            return true;
       }else{
            return false;
       }
}


輸入日期格式驗證
function CheckDate(INDate){ 
if (INDate==""){return true;}
if(INDate.indexOf('-',0)!=-1){ separate="-"}
else{
if(INDate.indexOf('/',0)!=-1){separate="/"}
else {return true;}
}
area=INDate.indexOf(separate,0)
//獲取年份
subYY=INDate.substr(0,area)
if(isNaN(subYY) || subYY<=0){
   return true;
}  
//轉換月份
subMM=INDate.substr(area+1,INDate.indexOf(separate,area+1)-(area+1))
if(isNaN(subMM) || subMM<=0){
   return true;
}
if(subMM.length<2){subMM="0"+subMM}
//轉換日
area=INDate.lastIndexOf(separate)
subDD=INDate.substr(area+1,INDate.length-area-1)
if(isNaN(subDD) || subDD<=0){
   return true;
}
if(eval(subDD)<10){subDD="0"+eval(subDD)}
NewDate=subYY+"-"+subMM+"-"+subDD
if(NewDate.length!=10){return true;}
if(NewDate.substr(4,1)!="-"){return true;}
if(NewDate.substr(7,1)!="-"){return true;}
var MM=NewDate.substr(5,2);
var DD=NewDate.substr(8,2);
if((subYY%4==0 && subYY%100!=0)||subYY%400==0){ //判斷是否為閏年
   if(parseInt(MM)==2){
if(DD>29){return true;}
   }
}else{
   if(parseInt(MM)==2){
if(DD>28){return true;}
   } 
}
var mm=new Array(1,3,5,7,8,10,12); //判斷每月中的最大天數
for(i=0;i< mm.length;i++){
   if (parseInt(MM) == mm){
if(parseInt(DD)>31){
return true;
}else{
return false;
}
   }
}
if(parseInt(DD)>30){return true;}
if(parseInt(MM)>12){return true;}
return false;
}


email驗證


function checkemail(str){
    //在JavaScript中,正則表示式只能使用"/"開頭和結束,不能使用雙引號
var Expression=/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/; 
var objExp=new RegExp(Expression);
if(objExp.test(str)==true){
return true;
}else{
return false;
}
}


家庭電話號碼驗證函式


function checktel(tel){
var str=tel;
    //在JavaScript中,正則表示式只能使用"/"開頭和結束,不能使用雙引號
var Expression=/(\d{3}-)?\d{8}|(\d{4}-)(\d{7})/; 
var objExp=new RegExp(Expression);
if(objExp.test(str)==true){
return true;
}else{
return false;
}
}


漢字驗證函式


function checkrealname(realname){
var str=realname;
    //在JavaScript中,正則表示式只能使用"/"開頭和結束,不能使用雙引號
var Expression=/[^\u4E00-\u9FA5]/; 
var objExp=new RegExp(Expression);
if(objExp.test(str)==true){
return true;
}else{
return false;
}
}


身份證號碼驗證函式


function checkeNO(NO){
var str=NO;
    //在JavaScript中,正則表示式只能使用"/"開頭和結束,不能使用雙引號
var Expression=/^\d{17}[\d|X]|^\d{15}$/; 
var objExp=new RegExp(Expression);
if(objExp.test(str)==true){
return true;
}else{
return false;
}
}
金額小寫變大寫函式


function convert(str){
   if(str==""){
alert("請輸入金額!");form1.money.focus();return;
   }
   if(isNaN(str)){
alert("您輸入的金額不合法!");return;
   }
   if(str>999999999999){
alert("您輸入的金額不能大於999999999999!");return;
   }
   //將小數點後保留兩位小數
   if(str.indexOf(".")>0){
var decimal=str.length-str.indexOf(".")-1;
if(decimal>2){
str=str.substr(0,str.length+2-decimal);
}
   }
   value=change(str); //呼叫自定義函式轉換
   form1.moneyok.value=value;   //將轉換後的值賦給"轉換後的大寫金額"文字框
}
function change(str){
   je="零壹貳叄肆伍陸柒捌玖";
   cdw="萬仟佰拾億仟佰拾萬仟佰拾元角分";
   var newstring=(str*100).toString();
   newstringlog=newstring.length;
   newdw=cdw.substr(cdw.length-newstringlog);
   num0=0;     //記錄零的個數
   wan=0;     //記錄萬位出現的次數
   dxje="";     //記錄大寫金額
   for(m=1;m<newstringlog+1;m++){
xzf=newstring.substr(m-1,1); 
dzf=je.substr(xzf,1);
dw=newdw.substr(m-1,1);
if(dzf=="零"){
dzf="";
if(dw=="億"){
}else if(dw=="萬"){
dzf="";
wan=1; 
}else if(dw=="元"){
}else{
dw=""; //記錄單位  
}
num0=num0+1;
}else{
if(num0-wan>0){
    if(dw!="角"){
    dzf="零"+dzf;
    }
}
num0=0;
}
dxje=dxje+dzf+dw;
   }
   if(newstring.length!=1){
if(newstring.substr(newstring.length-2)=="00"){
dxje=dxje+"整";
}else{
dxje=dxje;
}
   }
   return dxje;
}
去除字串空格函式


function trim(str){ //去除首尾空格
var re=/(^\s*)|(\s*$)/g;
str=str.replace(re,"");
return str;
}
function alltrim(str){ //去除全部空格
var re=/\s/g; 
str=str.replace(re,"");
return str;
}
function rtrim(str){ //去除尾部空格
var re=/(\s*$)/g; 
str=str.replace(re,"");
return str;
}

相關推薦

javascript常用資料驗證函式

正則表示式日期驗證函式 function CheckDate(str){       //在JavaScript中,正則表示式只能使用"/"開頭和結束,不能使用雙引號        var Expression=/^((((1[6-9]|[2-9]\d)\d{2})(\/

javascript 身份證號碼驗證函式(可辨真偽,支援15或18位身份證號)測試誤差為0

話不多說,直接上程式碼,我不生產程式碼,我只是程式碼的搬運工。 //驗證身份證號方法 var test = function (idcard) { var Errors = new Array("驗證通過!", "身份證號碼位數不對!", "身份證號碼出生日期超出範圍或含有非法

常用js驗證函式

//數字檢測 function checkNumber(str) {     if (str.Trim() == "") {         return true;     }     var patrn = /^[0-9]+$/;     return patrn.te

【實用】常用JS驗證函式大全

[code language=js]/*********************************************************************** 常用JS驗證函式 * QQ:12165743* Email:[email prote

Python 資料轉換的常用的幾類資料轉換函式

(一)chr 函式 # coding=utf-8 # aa 為ASCII碼值組成的一個list aa=[50, 48, 49, 56, 48, 52, 48, 57, 48, 48, 48, 51, 0, 0, 0, 0, 0, 0, 0, 0] # cc=[0, 0, 0, 0, 0, 0, 0

JavaScript常用函式總結

 最近正在學習js語法,講到函式這一塊內容,感覺有些細節還是挺有用的,所以發文總結一下。      javascript這門語言本身就是一種弱型別語言,它不和像java, c ,c#等等這些語言一樣,在宣告變數和方法的時候不需要對齊進行指定資料型別的修飾,

javascript常用方法函式收集

獲取設定css樣式 /* el, 獲取樣式的元素 attr, 對應的樣式 value 對應的值 */ function css(el,attr,val){ if(val === undefined){//如果val沒有傳,說明想要獲取樣式

JavaScript基本資料型別,函式物件,表,陣列,字串,函式呼叫

  直接上程式碼了, 1 cc.Class({ 2 extends: cc.Component, 3 4 properties: { 5 6 }, 7 //JS基本資料_函式物件_表_陣列_字串_函式呼叫 8 onLoad:funct

《OpenCV3程式設計入門》——4.2 OpenCV中常用資料結構和函式(Point、Scalar、Size、Rect、cvtColor)

目錄 1、點的表示:Point類 2、顏色的表示:Scalar類 3、尺寸的表示:Size類 4、矩形的表示:Rect類 5、顏色空間轉換:cvtColor()函式 1、點的表示:Point類 Point類資料結構表示了二維座標系下的點,即由影象座標x和y指定的2D點

[OpenCV3程式設計入門讀書筆記]常用資料結構和函式(3)

點的表示:Point類 //第一種表示方式 Point point; point.x = 10; point.y = 8; //第二種表示方式 Point point = Point(10,8); 顏色的表示:Scalar類 特別注意OopenCV裡面不是RGB,是BGR,所以下面的a

python 常用資料視覺化函式 kaggle House Price

import missingno as msno import pandas as pd import matplotlib.pyplot as plt #讀入資料並簡單描述 train = pd.read_csv(r'G:\MachineLearning\data\Hou

JavaScript常用函式

對字串操作的函式 var str = "A basket of big turnips."; 替換字元-replace() 輸入: var str = str.replace(/b/g,"BXX")  輸出:A BXXasket of BXXig turnips.

資料處理中常用的Excel函式

​在處理資料的時候,我們經常使用Python中的Pandas包來處理,有時候即使是很小的資料量,也使用Pandas來處理。個人覺得這有點大材小用,並且有點浪費時間。所以為了能夠快速的處理這些小型的資料,最近學習瞭如何利用Excel來處理。感覺這樣比使用Pandas處理得到的結果快速便捷很

javascript 常用函式(一)

部分也是自己常用的,但是部分還需要實際驗證 1、Array型別函式: array.concat(item…) 函式功能:關聯陣列,實現陣列相加功能,但並不影響原先陣列,concat返回新陣列。 JS常用的標準函式 array.join(separator) 函式功能:將array中的每

javascript 常用函式(二)

/***javascript 常用函式**/function each( object, callback ) { if ( undefined === object.length ){ for ( var name in object ) {

常用的js驗證函式 (轉載)

//******************************************************************/**//**JavaScript Document* <p>タイトル: JS常用処理函式</p>* <p&g

列舉幾個 JavaScript常用的全域性函式,並描述其作用

JavaScript 中常用的全域性函式及其作用如下: 1. parseInt:解析一個字串並返回一個整數; 2. parseFloat:解析一個字串並返回一個浮點數; 3. isNaN:檢查某個

matlab 在批量處理csv檔案資料的時候常用的處理函式

本篇文章中我將完成如何大批量處理csv檔案的資料。首先講解程式裡用到的函式。 在此之前,向新手科普一下matlab註釋多行的小技巧:註釋:ctrl+r  取消註釋:ctrl+t 1、str = strrep(str1, str2, str3) 用於刪掉某些不需要的符號,比

JavaScript學習筆記】1:js的書寫,顯示資料,變數,函式

JavaScript描述的是網頁的行為,可以直接改變HTML而改變網頁的內容,或者提供和使用者的互動。 js寫在哪裡 ①直接寫入HTML JavaScript可以寫在HTML的script雙標籤裡,一般把這個雙標籤放在HEAD頭裡: <

使用Javascript實現客戶端資料驗證

</pre><p>1.獲取表單中輸入的資料</p><p>2.驗證表單中輸入的資料</p><pre name="code" class="html"><!DOCTYPE html PUBLIC "-