js 正則表達式 判斷 數字\字母\中文 (實例)

jopen 12年前發布 | 119K 次閱讀 正則表達式 JavaScript開發

js 正則表達式 判斷 數字\字母\中文 (實例)
2010-07-23 15:40

/ 判斷指定的內容是否為空,若為空則彈出 警告框/ function isEmpty(theValue, strMsg){ if(theValue==""){ alert(strMsg+"不能為空!"); return true; } return false; } / 中文判斷函數,允許生僻字用英文“”代替 返回true表示是符合條件,返回false表示不符合 / function isChinese(str){ var badChar ="ABCDEFGHIJKLMNOPQRSTUVWXYZ"; badChar += "abcdefghijklmnopqrstuvwxyz"; badChar += "0123456789"; badChar += " "+" ";//半角與全角空格 badChar += "`~!@#$%^&()-_=+]\|:;\"\'<,>?/";//不包含或.的英文符號 if(""==str){ return false; } for(var i=0;i var c = str.charAt(i);//字符串str中的字符 if(badChar.indexOf(c) > -1){ return false; } } return true; } / 數字判斷函數,返回true表示是全部數字,返回false表示不全部是數字/ function isNumber(str){ if(""==str){ return false; } var reg = /\D/; return str.match(reg)==null; }

/ 判斷給定的字符串是否為指定長度的數字 是返回true,不是返回false/ function isNumber_Ex(str,len){ if(""==str){ return false; }

if(str.length!=len){ return false; }

if(!isNumber(str)){ return false; } return true; }

/ money判斷函數,允許第一位為"-"來表示欠錢 返回true表示格式正確,返回false表示格式錯誤/ function isMoney(str){ if(""==str){ return false; } for(var i=0;i var c = str.charAt(i); if(i==0){ if(c!="-"&&(c<"0"||c>"9")){ return false; }else if(c=="-"&&str.length==1){ return false; } }else if(c < "0" || c > "9"){ return false; } } return true; } / 英文判斷函數,返回true表示是全部英文,返回false表示不全部是英文/ function isLetter(str){ if(""==str){ return false; } for(var i=0;i var c = str.charAt(i); if((c<"a"||c>"z")&&(c<"A"||c>"Z")){ return false; } } return true; } / 空格判斷,當包含有空格返回false,當不包含一個空格返回true ""不能被判斷/ function notInSpace(str){ if(""==str){ return false; } var badChar =" "; badChar += " "; for(var i=0;i var c = str.charAt(i);//字符串str中的字符 if(badChar.indexOf(c) > -1){ return false; } } return true; } / 號判斷函數,返回true表示是號,返回false表示不符合規范/ function isFPH(str){ if(""==str){ return false; } for(var i=0;i var c = str.charAt(i); if((c < "0" || c > "9") && (c!="-")&&(c!=",")){ return false; } } return true; } / 電話判斷函數,允許“數字”、“;”、“-”、“(”、”)“, true表示是電話號碼/ function isTelephone(str){ var trueChar = "()-;1234567890"; if(""==str){ return false; } for(var i=0;i var c = str.charAt(i);//字符串str中的字符 if(trueChar.indexOf(c) == -1) return false; } return true; } /* 學制可以為1-7,也可以為3.5這種形式,不能超過7年或者低于1年/ function isXZ(str){ if(""==str){ return false; } var reg = /^1-6?$/; var r = str.match(reg); if(null!=r){ return true; }else{ if(str=="7"){ return true; }else{ return false; } } }

/ 判斷證書編號是否符合要求,證書編號包含中文、數字、大小寫字母、(、)、- 是返回true,不是返回false/ function isZSBH(str){ if(""==str){ return false; } for(var i=0;i var c = str.charAt(i); alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; alpha += "abcdefghijklmnopqrstuvwxyz"; alpha += "()-"; if(!isChinese(c)&&!isNumber(c)&&alpha.indexOf(c)==-1){ return false; } } return true; }

/ 身份證判斷函數,是返回true,不是返回false 15位數字,18位數字或者最后一位為X(大寫)/ function isSFZ(str){ if(""==str){ return false; } if(str.length!=15&&str.length!=18){//身份證長度不正確 return false; } if(str.length==15){ if(!isNumber(str)){ return false; } }else{ str1 = str.substring(0,17); str2 = str.substring(17,18); alpha = "X0123456789"; if(!isNumber(str1)||alpha.indexOf(str2)==-1){ return false; } } return true; } / 得到今天的年,月,日 調用方法:today = new getToday(); 則today.year為今天的年以此類推/ function getToday(){ this.now = new Date(); this.year = this.now.getFullYear(); this.month = this.now.getMonth(); this.day = this.now.getDate(); }

js判斷數字,字母,中文 1.

var reg = /^(\w|[\u4E00-\u9FA5])*$/; if(arr=username.match(reg)) { ti=1; return ture; } else { alert("用戶名只允許為英文,數字和漢字的混合,\n請檢查是否前后有空格或者其他符號"); ti=0; return false; }

2.利用正則表達式限制網頁表單里的文本框輸入內容:

用正則表達式限制只能輸入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5] /g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"

用正則表達式限制只能輸入全角字符: onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"

用正則表達式限制只能輸入數字:onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

用正則表達式限制只能輸入數字和英文:onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

數字 <script> function check() { if(!isNaN(document.all.form.str.value)) { alert("數字"); } </script> 字母 <script> function check() { var str = /[_a-zA-Z]/; if(str.test(document.all.form.str.value)) { alert("字母"); } } </script> <form name="form" action="" onsubmit="return check();"> <input type=text name=str> <input type=submit> <form>


/**

  • 一些常用的javascript函數(方法) *
  • 為便于使用,均書寫成String對象的方法
  • 把他保存為.js文件,可方便的擴展字符串對象的功能 *
  • 方法名 功 能

  • Trim 刪除首位空格
  • Occurs 統計指定字符出現的次數
  • isDigit 檢查是否由數字組成
  • isAlpha 檢查是否由數字字母和下劃線組成
  • isNumber 檢查是否為數
  • lenb 返回字節數
  • isInChinese 檢查是否包含漢字
  • isEmail 簡單的email檢查
  • isDate 簡單的日期檢查,成功返回日期對象
  • isInList 檢查是否有列表中的字符字符
  • isInList 檢查是否有列表中的字符字符 */

/ 刪除首尾空格 / String.prototype.Trim = function() { return this.replace(/(^\s)|(\s$)/g, ""); }

/ 統計指定字符出現的次數 / String.prototype.Occurs = function(ch) { // var re = eval("/[^"+ch+"]/g"); // return this.replace(re, "").length; return this.split(ch).length-1; }

/ 檢查是否由數字組成 / String.prototype.isDigit = function() { var s = this.Trim(); return (s.replace(/\d/g, "").length == 0); }

/ 檢查是否由數字字母和下劃線組成 / String.prototype.isAlpha = function() { return (this.replace(/\w/g, "").length == 0); } / 檢查是否為數 / String.prototype.isNumber = function() { var s = this.Trim(); return (s.search(/^[+-]?[0-9.]*$/) >= 0); }

/ 返回字節數 / String.prototype.lenb = function() { return this.replace(/[^\x00-\xff]/g,"**").length; }

/ 檢查是否包含漢字 / String.prototype.isInChinese = function() { return (this.length != this.replace(/[^\x00-\xff]/g,"**").length); }

/ 簡單的email檢查 / String.prototype.isEmail = function() {  var strr; var mail = this;  var re = /(\w+@\w+.\w+)(.{0,1}\w)(.{0,1}\w)/i;  re.exec(mail);  if(RegExp.$3!="" && RegExp.$3!="." && RegExp.$2!=".") strr = RegExp.$1+RegExp.$2+RegExp.$3;  else   if(RegExp.$2!="" && RegExp.$2!=".") strr = RegExp.$1+RegExp.$2;   else  strr = RegExp.$1;  return (strr==mail); }

/ 簡單的日期檢查,成功返回日期對象 / String.prototype.isDate = function() { var p; var re1 = /(\d{4})年./-月./-[日]?$/; var re2 = /(\d{1,2})月./-日./-[年]?$/; var re3 = /(\d{1,2})月./-日./-[年]?$/; if(re1.test(this)) { p = re1.exec(this); return new Date(p[1],p[2],p[3]); } if(re2.test(this)) { p = re2.exec(this); return new Date(p[3],p[1],p[2]); } if(re3.test(this)) { p = re3.exec(this); return new Date(p[3],p[1],p[2]); } return false; } / 檢查是否有列表中的字符字符 / String.prototype.isInList = function(list) { var re = eval("/["+list+"]/"); return re.test(this); }</pre>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!