正则表达式集合(JS)

来源:互联网 发布:淘宝买steam 安全吗 编辑:程序博客网 时间:2024/04/25 18:05

正则表达式集合(JS)

文本框只能输入数字而且不能粘贴只能输入数字。禁止粘贴
onpaste="return false;"  onKeypress="if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;"
将输入非数字的删除掉
onkeyup="this.value=this.value.replace(/[^/d*]/,'')"

应用时:

<input name="sort" type="text" id="sort2" size="3" maxlength="3"onpaste="return false;" onKeypress="if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;" onkeyup="this.value=this.value.replace(/[^/d*]/,'');">


邮箱地址检测

var strm = document.myform.CoMail.value   //提交mail地址的文本框
 var regm = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(/.[a-zA-Z0-9_-]+)+$/;//验证Mail的正则表达式,^[a-zA-Z0-9_-]:开头必须为字母,下划线,数字,
 if (!strm.match(regm) && strm!="")
   {
     alert("邮箱地址格式错误或含有非法字符!/n请检查!");
  document.myform.CoMail.select();  
  return false;
    }

 

整数或者小数:^[0-9]+/.{0,1}[0-9]{0,2}$
只能输入数字:"^[0-9]*$"。
只能输入n位的数字:"^/d{n}$"。
只能输入至少n位的数字:"^/d{n,}$"。
只能输入m~n位的数字:。"^/d{m,n}$"
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
只能输入非零的正整数:"^/+?[1-9][0-9]*$"。
只能输入非零的负整数:"^/-[1-9][]0-9"*$。
只能输入长度为3的字符:"^.{3}$"。
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输入由数字、26个英文字母或者下划线组成的字符串:"^/w+$"。
验证用户密码:"^[a-zA-Z]/w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证是否含有^%&',;=?$/"等字符:"[^%&',;=?$/x22]+"。
只能输入汉字:"^[/u4e00-/u9fa5]{0,}$"
验证Email地址:"^/w+([-+.]/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*$"。
验证InternetURL:"^http://([/w-]+/.)+[/w-]+(/[/w-./?%&=]*)?$"。
验证电话号码:"^(/(/d{3,4}-)|/d{3.4}-)?/d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。
验证身份证号(15位或18位数字):"^/d{15}|/d{18}$"。
验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。
验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。

 

日期正则表达式及检测

这是yyyy-mm-dd hh:mm:ss 的 
/^(/d{4})/-(/d{2})/-(/d{2}) (/d{2}):(/d{2}):(/d{2})$/ ; 
这是 yyyy-mm-ddde 的
/^(/d{4})/-(/d{2})/-(/d{2})$/ 
function validateCNDate( strValue ) {
var objRegExp = /^/d{4}(/-|//|/.)/d{1,2}/1/d{1,2}$/

if(!objRegExp.test(strValue))
return false; 
else{
var arrayDate = strValue.split(RegExp.$1); 
var intDay = parseInt(arrayDate[2],10);
var intYear = parseInt(arrayDate[0],10);
var intMonth = parseInt(arrayDate[1],10);
if(intMonth > 12 || intMonth < 1) {
return false;
}
var arrayLookup = { '1' : 31,'3' : 31, '4' : 30,'5' : 31,'6' : 30,'7' : 31,
'8' : 31,'9' : 30,'10' : 31,'11' : 30,'12' : 31}
if(arrayLookup[parseInt(arrayDate[1])] != null) {
if(intDay <= arrayLookup[parseInt(arrayDate[1])] && intDay != 0)
return true; 
}
if (intMonth-2 ==0) {
var booLeapYear = (intYear % 4 == 0 && (intYear % 100 != 0 || intYear % 400 == 0));
if( ((booLeapYear && intDay <= 29) || (!booLeapYear && intDay <=28)) && intDay !=0)
return true;
}
}
return false; 
}

 

原创粉丝点击